for ( i = 1 ; i <= 200 ; i ++ ) /*注意:该方法只适合求1~299之间所有包含3的数字之和*/ /* i%10 == 3判断所有个位为3的情况 i%100/10 == 3判断十位为3的情况 因为题目求1~200之>间所有包含3数字的和,并不会出现百位为3的情况(300)*/ if ( i % 10 == 3 || i % 100 / 10 == 3 ) sum += i ; printf ( "1~200之间所有包含3的数字和为:%d\n" , sum ) ;

2011年

编写程序输出符合下列要求的全部三位数。
条件:由1、2、3、4四个数字组成,互相同且无重复的所有三位数。

#include<stdio.h>
int main(void)
        int i,j,k,sum;
        for(i = 1;i <= 4;i++)
                for(j = 1;j <= 4;j++)
                        for(k = 1;k <= 4;k++)
                                if(i != j && i != k && j != k)
                                        printf("%d%d%d\t",i,j,k);
        return 0;
  • 实现思路:定义三层循环,分别循环4次代表1、2、3、4的四个数字。三层循环可以让所有三位数情况遍历一次。在循环体内输出符合条件的三位数,条件为i != j && i != k && j != k(互不相同且不重复)。

编写一个程序从键盘输出10个学生的成绩,统计输出最高分,最低分和平均分。

#include<stdio.h>
int main(void)
        int score[10],max,min,sum = 0,i;
        double avg;
        for(i = 0;i < 10;i++)
                printf("请输出第%d个学生成绩:",(i+1));
                scanf("%d",&score[i]);
                if(i == 0)
                        max = score[i];
                        min = score[i];
                if(max < score[i])
                        max = score[i];
                if(min > score[i])
                        min = score[i];
                sum += score[i];
        avg = sum / 10.0;
        printf("max-->%d\tmin-->%d\tavg-->%0.2f\n",max,min,avg);
        return 0;

2012年

编写程序找出1~200之间所有既能被5整除又能被7整除的数。

#include<stdio.h>
int main(void)
        int i;
        for(i = 1;i <= 200;i++)
                if(i % 5 == 0 && i % 7 == 0)
                        printf("%d\t",i);
        printf("\n");
        return 0;
 

有一分数序列
2/1、3/2、5/3、8/5、13/8、21/13、……
求出这个数列的前20项之和。

#include<stdio.h>
int main(void)
        double sum = 0.0;
        int n1 = 1,n2 = 2,t;
        int i;
        for(i = 0;i < 20;i++)
                // 如果是int/int必须要强制类型转换,否则精度丢失。也可以直接将n1.n2的数据类型定义为double
                sum += (double)n2/n1;
                t = n1;
                n1 = n2;
                n2 += t;
        printf("%f\n",sum);
        return 0;
 

将一个字符串转换成对应的数字,如字符串"123"转换成123,假设字符串中所有字符都是数字字符。

#include<stdio.h>
int main(void)
        char str[] = "123";
        int i = 0,value = 0;
        while(str[i] != '\0')
                value *= 10;
                // 因为数字0的ASCII码为48,所以转换到int要减去48
                value += str[i] - 48;
                i++;
        printf("%d\n",value);
        return 0;

2013年

编写程序输出三位整数中各位数字之和为7的所有数。如整数106、115、124、……均为满足条件的数(1+0+6=7、1+1+5=7、1+2+4=7)。

#include<stdio.h>
int main(void)
        int i,n1,n2,n3,sum;
        for(i = 100;i <= 999;i++)
                n1 = i % 10;
                n2 = (i % 100 - n1) / 10;
                n3 = (i - (n1 + n2 * 10)) / 100;
                sum = n1 + n2 + n3;
                if(sum == 7)
                        printf("%d\t",i);
        printf("\n");
        return 0;
 

编写程序将下列四行四列方阵中的数存入二维数组a[4][4]中,并求出其中的最大值及最大值所在数组的行标和列标。
在这里插入图片描述

#include<stdio.h>
int main(void)
        int a[][4] = {23,44,12,77,13,2,33,12,23,45,12,65,11,9,15,78},i,j,row,col,max = a[0][0];
        for(i = 0;i < 4;i++)
                for(j = 0;j < 4;j++)
                        if(max < a[i][j])
                                row = i + 1;
                                col = j + 1;
                                max = a[i][j];
        printf("max is %d,row and col is (%d,%d)\n",max,row,col);
        return 0;

2014年

编写程序输出1!+2!+3!+…+50!的值。

#include<stdio.h>
int main(void)
        int i;
        long t = 1,sum = 0;
        for(i = 1;i <= 50;i++)
                t *= i;
                sum += t;
        printf("sum is %ld\n",sum);
        return 0;
 

从键盘输入某学生的四科成绩,编写程序实现输出四科的总分、平均分、最高分和最低分。

#include<stdio.h>
void main(void)
        double score[4],sum = 0.0,avg = 0.0,min = 0.0,max = 0.0;
        int i;
        for(i = 0;i < 4;i++)
                printf("请输入第%d科成绩:",i+1);
                scanf("%lf",score+i);
        max = score[0];
        min = score[0];
        for(i = 1;i < 4;i++)
                if(max < score[i])
                        max = score[i];
                if(min > score[i])
                        min = score[i];
                sum += score[i];
        avg = sum / 4;
        printf("sum is %f\navg is %f\nmax is %f\nmin is %f\n",sum,avg,max,min);

2015年

输入10个学生的成绩(整数),需要统计出成绩低于平均分的学生人数,请编程实现。

#include<stdio.h>
void main(void)
        int score[10],i,sum = 0,num = 0;
        double avg = 0.0;
        for(i = 0;i < 10;i++)
                printf("请输入第%d个学生成绩:",i+1);
                scanf("%d",score+i);
                sum += score[i];
        avg = sum / 10.0;
        for(i = 0;i < 10;i++)
                if(score[i] < avg)
                        num++;
        printf("成绩低于平均分的学生人数为:%d\n",num);
 

一个三位数,如果它的三个位置上的数字的立方和等于这个数本身,就称它为水仙花数。如153=1*1*1+5*5*5+3*3*3,所以153是水仙花数。请编程找出100~500之间的水仙花数。

#include<stdio.h>
void main(void)
        int i,n1,n2,n3;
        for(i = 100;i <= 500;i++)
                n1 = i % 10;
                n2 = (i % 100 - n1) / 10;
                n3 = (i % 1000 - (n1 + n2 * 10)) / 100;
                if(i == (n1*n1*n1 + n2*n2*n2 + n3*n3*n3))
                        printf("%d\t",i);
        printf("\n");

2016年

输入两个正整数m和n,求其最大公约数和最小公倍数。

#include<stdio.h>
void main(void)
        int m,n,temp;
        int x;          // 最小公约数
        int y;          // 最小公倍数
        printf("请输入正整数m n:");
        scanf("%d%d",&m,&n);
        x = m;
        y = n;
        if(x < y)
                temp = x;
                x = y;
                y = temp;
        while(y != 0)
                temp = x % y;
                x = y;
                y = temp;  
        y = m * n / x;
        printf("最小公约数为:%d\n最大公倍数为:%d\n",x,y);
 

输出以下的杨辉三角形(要求输出10行)。在这里插入图片描述

#include<stdio.h>
void main(void)
        int arr[10][10],i,j;
        for(i = 0;i < 10;i++)
                arr[i][0] = 1;
                arr[i][i] = 1;
        for(i = 2;i < 10;i++)
                for(j = 1;j < i;j++)
                        arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
        for(i = 0;i < 10;i++)
                for(j = 0;j <= i;j++)
                        printf("%d\t",arr[i][j]);
                printf("\n");

2017年

输入一个字符,判别它是否为小写字母,如果是,将他转换为大写字母;如果不是,不转换。然后输出最后得到的字符。

有一个3*4的矩阵a,求出其中值最小的那个元素的值,以及其他所在的行号和列号。在这里插入图片描述

#include<stdio.h>
void main(void)
        int a[][4] = {{1,2,3,4},{9,8,7,6},{-10,10,-5,2}},i,j,row = 0,col = 0,min = a[0][0];
        for(i = 0;i < 3;i++)
                for(j = 0;j < 4;j++)
                        if(min > a[i][j])
                                min = a[i][j];
                                row = i + 1;
                                col = j + 1;
        printf("max-->%d\n(row,col)-->(%d,%d)\n",min,row,col);

2018年

编写函数Fun1,其实现的功能是:判断某一年是否为闰年,如果是返回1,否则返回0。(闰年的条件:能被4整除,但不能被100整除的年份是闰年;能被400整除的年份是闰年)

#include<stdio.h>
int Fun1(int year)
        int flag = 0;
        if(year%4 == 0 && year%100 != 0)
                flag = 1;
        if(year%400 == 0)
                flag = 1;
        return flag;
 

有5个学生坐在一起,问第5个学生多少岁,他说比第4个学生大2岁,问第4个学生岁数,他说比第3个学生大2岁,问第3个学生,又说比第2个学生大2岁,问第2个学生,说比第1个大2岁,最后问第1个学生,他说是10岁。设计一个函数描述上述递归过程,并采用主函数调用的方式,输出第5个学生的年龄。

#include<stdio.h>
void main(void)
        int Fun1(int,int);
        printf("第五个学生年龄是%d岁\n",Fun1(5,0));
int Fun1(int num,int age)
        if(num == 1)
                return age += 10;
        age += 2;
        return Fun1(--num,age);

2019年

2019年与2016年的题目完全相同,请参考2016年。

2020年

编写函数 Fun23 实现功能如下:指针 s 所指向的字母数字串中只包含数字和字母,实现除了字符串前的数字字符保留,其他的数字字符全部删除。例如:如果 s 的内容为1234ABCD44432abcde7890,按规定删除后 s 的内容应当是:1234ABCDabcde

void Fun23(char *s){
    while(*s - '0' <= 9 && *s - '0' >= 0)
        s++;
    while(*s != '\0'){
        if(*s - '0' <= 9 && *s - '0' >= 0)
            strcpy(s,s+1);
            s++;
 

编写函数 Fun22 实现如下功能:假设 n 名学生的成绩存储在一个结构体数组变量 scoreLists 中,计算学生成绩的平均分并通过函数返回。其中,结构体类型定义代码如下所示。

struct StudentScore{
    double score;
double Fun22(struct StudentScore *stu,int n){
    int i;
    double sum = 0.0,avg;
    for(i = 0;i < n;i++){
        sum += stu->score;
        stu++;        
    avg = sum/n;
    return avg;
				
图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测图像检测 图像检测图像检
最近这段时间以来,关于驾驶证记分的制度有着非常热的关注程度,在关于信息化的建设阶段有依靠着技术的支持,本文就是要通过技术的手段来规范车辆的日常行驶,所以本文就提出了这样一个系统。 这个系统开发的技术使用的语言是python,数据库用的是mysql,系统是在网页上运行的,一系列操作都在网页上进行,不用太好的设备就可以运行,节约了很多的成本。本文用的这些技术有很多的好处,那究竟有什么好处呢,听我来讲,首先就是这些技术本人都非常的熟悉,所以开发起来非常的顺手,另外就是这些技术都非常的稳定,开发出来的系统不容易被破坏。
### 回答1: 广东专升本C语言历年真题主要涵盖了C语言的基本语法、数据类型、函数、指针、数组、结构体、文件操作等知识点。这些题目旨在考察考生对C语言的掌握程度以及解决实际问题的能力。 对于这些历年真题,考生可以通过以下几个方面进行复习和准备: 首先,熟悉C语言的基本语法和常用函数。这包括变量的声明与使用、运算符的使用、条件语句、循环语句等。可以通过阅读相关教材和编写简单的程序来提高对这些知识点的掌握程度。 其次,重点关注指针和数组的应用。指针是C语言中的一个重要概念,掌握指针的使用方法对于解决实际问题至关重要。考生可以多编写涉及指针和数组的程序来深入理解相关知识点。 另外,结构体和文件操作也是考点之一。结构体是C语言中用于存储多个不同类型数据的一种数据类型,考生需要掌握结构体的定义和使用方法。文件操作是指对文件进行读写操作,考生需要了解文件的打开、读写和关闭等操作。 最后,多做历年真题进行练习和巩固。通过做真题,考生可以了解考试的出题思路和考察重点,同时也可以发现自己的不足之处,及时进行补充和提高。还可以通过参加模拟考试来检验自己的复习效果和应试能力。 总之,广东专升本C语言历年真题的准备需要全面掌握C语言的基本知识,并通过练习和模拟考试来提高自己的应试能力。只有充分准备,才能在考试中取得好的成绩。 ### 回答2: 广东专升本考试是专门为在广东地区工作的大专毕业生提供升本科的机会的考试。其中包含了C语言的考试科目,所以对于考生来说,熟悉C语言历年真题对于备考很有帮助。 广东专升本C语言历年真题主要涵盖了C语言基础知识、语法规则、编程题等方面。通过解答这些历年真题,考生可以加深对C语言相关知识的理解,熟悉常见的编程题型,掌握解题思路和方法。 历年真题的解答过程中,考生需要先理清题目要求,然后通过对题目的分析,确定解题思路和算法。接着,根据题目要求编写相应的C代码实现解题目标,同时注意代码的规范和优化。最后,对代码进行调试和测试,确保代码的正确性和可行性。 通过解答历年真题,考生不仅可以提高对C语言知识的理解和掌握,还能了解到考试中常见的题型和难度,为应对考试做好准备。同时,通过不断练习解题,考生还可以培养自己的编程思维和解决问题的能力。 总之,广东专升本C语言历年真题对于备考非常重要。考生应该认真对待这一资源,通过解答历年真题来提高自己的编程水平和应试能力,从而在考试中取得好成绩。