c语言程序设计练习题-大学记忆
大学期间c语言程序设计的学习记录~
KousaiM
よろしくね
展开
-
C语言编写金字塔—c语言练习(1)
include <stdio.h>int main(){ int i,j; int k=4; for(i=1;i<=4;i++) { for(j=k;j>=1;j--) { printf("*"); } printf("\n"); k--; } retur原创 2016-05-17 16:59:00 · 10479 阅读 · 1 评论 -
查询自动售货机中商品的价格—c语言练习(2)
屏幕上显示菜单,用户可以连续查询商品价格,当查询次数超过5次时自动退出查询,不到5次时可以选择退出,输入其他编号,显示价格为0(保留1为小数);#include <stdio.h>int main(){ int choice,i; double price; for(i=0; i<=5; i++) { printf("[1]Select crips原创 2016-05-17 21:26:15 · 6248 阅读 · 2 评论 -
四则运算—c语言练习(3)
输入“操作数 运算符 操作数”的四则运算(使用switch) 词汇:expression-表达式 运行结果:Type in an expression:3.1+4.8 =7.9#include <stdio.h>int main(){ char op; double ex1,ex2; while(1) { p原创 2016-05-18 23:02:08 · 479 阅读 · 0 评论 -
用Switch语句统计字符个数—c语言练习(4)
【例3-10】输入10个字符,统计出空格、回车、数字及其他字符的个数 运行结果: Enter 10 characters:MIAOM 123? blank=1,digit=3,other=6#include <stdio.h>int main(void){ int blank,enter,digit,other,i; blank=enter=digi原创 2016-05-24 10:50:54 · 6463 阅读 · 0 评论 -
绝对值公式fabs()—c语言练习(5)
【例4-1】格雷戈里公式求∏的近似值,要求最后一项的绝对值小于0.0001 ∏/4=1-1/3+1/5-1/7……词汇:denominator:分母;flag:标记;#include <stdio.h>#include<math.h>int main(){ int denominator,flag; double item=1.0; double pi=0;原创 2016-05-24 11:23:30 · 2497 阅读 · 0 评论 -
输入一批学生成绩,计算平均值,并统计不及格人数—c语言练习(6)
/例4-2输入一批学生的成绩,以负数作为结束标志,计算平均成绩,并统计不及格人数/#include<stdio.h>int main(void){ int count,num; double grade,total; num=0; total=0; count=0; printf("Enter grades:"); scanf("%lf",&原创 2016-07-05 19:55:29 · 6324 阅读 · 0 评论 -
利用除法计算整数的位数—c语言练习(7)
/例【4-3】从键盘读入一个整数,统计该数的位数,例如 12345,输出5,输入-99,输出2,输入0,输出1/#include<stdio.h>int main(void){ int count,integer; count=0; printf("Enter a number:"); scanf("%d",&integer); if(integer<0) inte原创 2016-07-05 20:43:58 · 787 阅读 · 0 评论 -
利用求余判断素数—c语言练习(8)
/[例4-4]输入一个正整数,判断是否为素数,能被1跟自身整除的正整数,1不是,2是/#include<stdio.h>int main(void){ int a,i; printf("Enter a number:"); scanf("%d",&a); for(i=2;i<=a/2;i++) if(a%i==0)原创 2016-07-09 20:42:21 · 925 阅读 · 0 评论 -
c语言中利用rand()time()srand()....产生随机数【4-5】猜数游戏—c语言练习(9)
/[例4-5]输入所猜的整数,与计算机产生的随机数比较,显示结果/ 使用rand()函数可以产生随机数,范围在0-rand-max之间(2147483647),可以利用求余来控制随机数范围;但是发现得到的随机数都是固定的不随时间变化 srand()函数是用来设置rand()函数产生随机数时的种子,必须先设置产生随机数种子,如果没有事先设定,默认为1,所以产生的随机数没有变化原创 2016-07-09 22:05:06 · 2178 阅读 · 0 评论 -
自定义fact(n)函数求阶乘的累加和—c语言练习(10)
/[例4-6]计算1到100的阶乘和,要求定义调用函数fact(n)计算n的阶乘/#include<stdio.h>double fact(n);//函数声明int main(void){ int i; double sum; sum=0; for(i=1;i<=100;i++) { sum=sum+fact(i); } p原创 2016-07-09 22:21:37 · 25325 阅读 · 1 评论 -
利用嵌套循环计算1到100的阶乘和—c语言练习(11)
/[例4-7]计算1到100的阶乘和,要求利用嵌套循环/ 对于得嵌套循环初始化时,一定要分清内外层#include<stdio.h>int main(void){ int i=1,k=1; double item,sum=0; for(i=1;i<=100;i++) { item=1; for(k=1;k<=i;k++)原创 2016-07-09 22:58:25 · 8001 阅读 · 2 评论 -
while实现求最高分—c语言练习(12)
/例【4-8】从一批以负数结束的成绩中求出最高分,用while实现/ 循环前先读入一个数据,假定最大值#include<stdio.h>int main(void){ int score,max; printf("Enter marks:"); scanf("%d",&score); max=score; while(score>=0) {原创 2016-07-09 23:18:39 · 1615 阅读 · 0 评论 -
双重嵌套输出100以内全部素数—c语言练习(13)
/【4-10】输出100以内全部素数,每行输出10个/ 使用双重循环嵌套, %6d表示占位符为6,#include<stdio.h>int main(void){ int i,k,count=0; for(i=2;i<=100;i++) { for(k=2;k<=i/2;k++) if(i%k==0)原创 2016-07-17 21:12:18 · 1898 阅读 · 0 评论 -
求一个整数的各位数字之和,位数—c语言练习(14)
/输入一个整数,求各位数字之和,及位数,例如234 和为9 位数3/#include<stdio.h>int main(void){ int integer,count=0,sum=0; printf("Enter a integer"); scanf("%d",&integer); if(integer<0) integer=-integer;原创 2016-07-17 21:16:21 · 16474 阅读 · 9 评论 -
逆序问题—c语言练习(15)
/[4-9]逆序问题,输入一个正整数,要求逆序输出,/ 分离方法是对10求余,x/10为下次分离做准备#include<stdio.h>int main(void){ int x; printf("Enter x:"); scanf("%d",&x); while(x!=0) { printf("%d",x%10);原创 2016-07-17 21:17:11 · 273 阅读 · 0 评论 -
斐波那契序列—c语言练习(16)
/[4-11]斐波那契数列,即后一项是前两项的和 1 1 2 3 5 8 …./#include<stdio.h>int main(void){ int i,x1,x2,x; x1=x2=1; printf("%6d%6d",x1,x2);; for(i=3;i<=20;i++) { x=x1+x2; printf("%6d"原创 2016-07-17 21:17:47 · 264 阅读 · 0 评论 -
穷举算法搬砖问题—c语言练习(17)
/【4-11】搬砖问题,45人45快砖,男人女人小孩分别3,2,0.5/#include<stdio.h>int main(void){ int child,men,wom; for(men=0;men<=45;men++) for(wom=0;wom<=45;wom++) for(child=0;child<=45;child++)原创 2016-07-17 21:18:08 · 10375 阅读 · 0 评论 -
最大公约数与最小公倍数—c语言练习(18)
/输入两个正整数,求最大公约数与最小公倍数/#include<stdio.h>int main(void){ int m,n,d,x; printf("输入两个数m,n:\n"); scanf("%d,%d",&m,&n); x=m; while(x%n!=0) x=x+m; d=(m*n)/x; printf("最大公约数是%d,最原创 2016-07-18 08:12:38 · 296 阅读 · 0 评论 -
函数输出100全部素数(while 与 if 区别)—c语言练习(19)
/求100以内全部素数,每行输出10个,要求定义和调用函数prime(m)判断是否为素数,是返回·1,不是返回0/ 错误1:while与if区别:if执行一次后跳出循环,while判断为真后执行后面语句,执行完后继续回继续判定,直到为假为止。 错误2:prime()函数,for语句下加了括号循环,错误原因:若为0直接跳出,不会为1;若能执行下一条语句就一定是素数#include<st原创 2016-07-21 20:19:00 · 5247 阅读 · 0 评论 -
了解全局变量与局部变量---复数—c语言练习(20)
/分别输入两个复数的实部与虚部,用函数实现计算两个复数之和与之积/ 全局变量:为了解决多个函数间的变量共用 当局部变量与全局变量同名时,该函数中全局变量不起作用#include<stdio.h>float result_real,result_imag;//运算结果有两个数值,无法通过return返回,所以使用全局变量使其成为主函数与自定义函数均能使用的变量int main(void原创 2016-07-29 15:54:09 · 1220 阅读 · 0 评论 -
全局变量定义---例子—c语言练习(21)
//全局变量定义[5-7]#include<stdio.h>int x;int f();int main(void){ int a=1; x=a; a=f(); { //复合函数 int b=2; b=a+b; x=x+b; } printf("%d%6d",a,x)原创 2016-07-29 15:59:47 · 1254 阅读 · 0 评论 -
全局变量生存周期为整个程序执行周期---现金记账—c语言练习(22)
/用函数实现财务现金记账,先输入操作类型(1收入,2支出,0结束),再输入操作金额,计算现金剩余额,经多次操作直到输入操作类型为0时结束,要求定义并调用函数,其中现金收入与现金支出分别用不同函数实现/#include<stdio.h>float cash;//保存现金余额int main(void){ int choice; float value; void inco原创 2016-07-29 16:00:34 · 3048 阅读 · 0 评论 -
静态变量赋初值只在函数第一次调用时起作用,若没有赋初值,系统自动赋0—c语言练习(23)
/输入正整数N,输出1!-n!的值,要求定义并调用含静态变量的函数fact_s(n)计算N!/ 静态变量f保存着上次函数调用时计算得到的(n-1)!的值, 自动变量如果没有赋初值,其存储单元将是随机值,就静态变量而言,如果定义时没有赋初值,系统将自动赋0,并且赋值只在函数第一次调用时有效,以后调用都按照前一次调用时保留的值使用,因为静态局部变量的生存周期始于函数的第一次调用,贯穿整个程原创 2016-07-29 17:21:36 · 12963 阅读 · 0 评论