C语言程序设计入门经典例题_经典c语言程序设计题
C语言程序设计入门经典例题由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“经典c语言程序设计题”。
1、加法练习程序:由用户通过键盘输入加数和被加数,程序显示加法式子,用户通过键盘作答后,程序给出正确与错误提示信息。要求:利用C的选择语句if条件语句或switch开关语句,键盘输入数据前,程序会出被输入数据的信息提示。#include void main(){ int a,b,c;printf(“please put an addend:n”);scanf(“%d”,&a);printf(“please put an augend:n”);scanf(“%d”,&b);printf(“please answer the question:a+b=?”);scanf(“%d”,&c);if(a+b==c)printf(“very good!”);else printf(“wrong!”);}
个人感觉这个程序最不好的地方是,不管回答正确还是回答错误,程都会立即结束,所以我用了do„while实现一个回答错误之后获得再次回答机会的循环,则程序修改如下: #include void main(){ int a,b,c;printf(“请输入一个加数:n”);scanf(“%d”,&a);printf(“请输入一个被加数:n”);scanf(“%d”,&b);do { printf(“请回答:a+b=”);scanf(“%d”,&c);if(a+b!=c)printf(“请再想一想n”);} while(a+b==c)printf(“回答正确!”);}
2、判闰年程序:判断某一年是否闰年? 要求:程序首先提示用户从键盘输入4位数年份,程序能显示“XXXX年是闰年”或“XXXX年不闰年”的输出信息。
算法:year 是闰年,即year能被4整除但不能被100整除,或 year 能被 400 整除。其对应的C逻辑表达式为:(year % 4 = = 0 && year % 100!= 0)||(year % 400 = = 0)或:(!(year % 4)&& year % 100)||!(year % 400)程序中可设置1个变量leap来代表是否闰年的信息,闰年:leap=1;不闰年:leap=0。#include void main()int year;printf(“请输入4位数年份:”);scanf(“%d”,&year);if(year%4==0&&year%100!=0||year%400==0)//闰年就是能被4整除但不能被100整除及能被400整除的 printf(“%d是闰年”,year); else printf(“%d不是闰年”,year);}
3、三角形九九表程序:要求选择C实现循环的4种方法(if+go, for语句,while语句,do…while语句)中的一种,比如,最好选择for语句来实现如下形式的“九九表”输出。
#include void main()int a,b,c;for(a=1;a
4、平面等腰三角形: 要求利用C的for循环实现如下平面图形输出。
如图,等腰三角形有6层,则 #include viod main()int a,b,c;//a,b,c分别是层数变量,变量,*变量 for(a=1;a=1;b--)printf(“ ”);for(c=1;c
5、平面倒立等腰三角形: 要求利用C的for循环实现如下平面图形输出。
#include viod main()int a,b,c;//a,b,c分别是层数变量,变量,*变量 for(a=6;a>=1;a--){for(b=6-a;b>=1;b++)printf(“ ”);for(c=11;c
6、判素数:要求由用户从键盘输入任一正整数m, 程序输出m是否素数的信息。#include viod main()int m,n;printf(“请输入任一正整数m:”);scanf(“%d”,&m);If(m==0||m==1);printf(“%d不是素数”,m);//0和1既不是素数也不是合数 for(n=2;n
7、计算:1!+2!+3!+...+9!
#include void main(){ int i;long p=1;double s=0.0;for(i=1;i
8、计算:1!+3!+5!+...+15!
#include void main()int i;long p=1;double s=0.0;for(i=1;i
9、计算:2!+4!+6!+...+16!
#include void main()int i;long p=1;double s=0.0;for(i=1;i
10、利用“比较交换法”对由用户从键盘输入的任意10个整数升序排序。要求:利用C的数组和循环,程序能分别输出排序前后的数组。#include void main(){ int i,s,a[10],t;//数组下标变量i printf(“请输入10个整数:n”);for(i=0;ia[s]){t=a[i];a[i]=a[s];a[s]=t;}//将数组中的数两两逐个比较换位,实现升序 printf(“排序后的数组为:n”);for(i=0;i
11、统计:由用户从键盘输入任意10个数,统计其中最大数,最小数及平均值。
#include void main(){ int i,s,a[10],t,sum;double n;printf(“输入任意10个整数:n”);for(i=0;ia[s]){t=a[i];a[i]=a[s];a[s]=t;}//实现10数升序排列 for(i=0,1
12、由二维数组实现矩阵:定义数组int a[5][4];实现5行4列矩阵输出。要求:矩阵元按数组的逻辑顺序依次是1~20间的自然数。提示:用双重for循环与二维数组的按行输出。#include void main()int i,j,s=1;int a[5][4];for(i=0;i