安徽大学C语言实验平台作业答案汇总
- 格式:docx
- 大小:43.61 KB
- 文档页数:76
安徽大学c语言考试题及答案安徽大学C语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的叙述,错误的是()。
A. 变量必须先定义后使用B. 变量的值在定义时可以不初始化C. 变量的类型必须一致D. 变量可以在定义时初始化2. C语言中,字符串常量存储在()。
A. 栈区B. 堆区C. 数据区D. 文字常量区3. 在C语言中,以下哪个关键字用于定义指针类型?()A. charB. intC. floatD. ptr4. 下面哪个函数不是C标准库函数?()A. printf()B. scanf()C. malloc()D. strcpy()5. C语言中,sizeof运算符的作用是()。
A. 返回变量的值B. 返回变量的地址C. 返回变量的数据类型D. 返回变量占用的字节大小6. 在C语言中,以下哪个不是合法的用户定义标识符?()A. _2startB. classC. floatD. int_var7. C语言中,函数的返回值类型必须与函数定义中的类型一致,这是指()。
A. 函数名B. 返回值C. 函数体D. 函数的参数8. 下列关于C语言数组的描述,错误的是()。
A. 数组名代表数组的起始地址B. 数组元素的下标从0开始C. 数组在内存中是连续存储的D. 数组一旦定义,其长度不能改变9. C语言中,结构体定义的关键字是()。
A. structB. unionC. enumD. type10. 在C语言中,若想从键盘输入一个字符,可以使用()函数。
A. getchar()B. scanf("%c", &c)C. printf("%c")D. puts("Enter a character: ")二、填空题(每空3分,共30分)11. 在C语言中,一个整型变量int所占用的字节数是_________。
12. 函数_________可以用来计算两个浮点数之间的绝对值差。
实验2答案五.程序改错#include<stdi o.h>int main(void){int x=3,y;y = x*x;printf("%d = %d * %d\n",y,x,x); /* 输出*/printf("%d * %d = %d\n",x,x,y);return 0;}六、一般编程题6.1#include<stdio.h>int main(void){int x,y;printf("Input x: ");scanf("%d",&x);printf("Input y: ");scanf("%d",&y);printf("%d + %d = %d\n",x,y,x+y);printf("%d - %d = %d\n",x,y,x-y);printf("%d * %d = %d\n",x,y,x*y);printf("%d / %d = %d\n",x,y,x/y);printf("%d %% %d = %d\n",x,y,x%y);return 0;}6.2#include<stdio.h>int main(void){ float x; double y;printf("Input x: ");scanf("%f",&x);printf("Input y: ");scanf("%lf",&y);printf("%f + %f = %f\n",x,y,x+y);printf("%f - %f = %f\n",x,y,x-y);printf("%f * %f = %f\n",x,y,x*y);printf("%f / %f = %f\n",x,y,x/y);return 0;}6.3#include<stdio.h>int main(void){ char c;printf("Input c: ");scanf("%c",&c);printf("%c\n",c+32);return 0;}6.4#include<stdio.h>int main(void){int celsius,fahr;fahr = 150;celsius = 5*fahr/9 - 5*32/9;printf("fahr = %d, celsius = %d\n", fahr, celsius);return 0;} 如果使用公式9)32(5-⨯=f c 计算结果不一样,celsius = 65。
1.一个C程序的执行是从。
A. 本程序的main函数开始,到main函数结束B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C. 本程序的main函数开始,到本程序文件的最后一个函数结束D. 本程序文件的第一个函数开始,到本程序main函数结束2. C语言的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。
A.必须为字母B.必须为下划线C. 必须为字母或下划线D. 可是字母、数字或下划线中任一字符3.下面四个选项中,不合法整型常量的选项是。
A.160B.-0x48aC.011D.06684.若x、i、j和k都是int型变量,则执行表达式:x=(i=4,j=16,k=32)后,x的值为。
A. 4B. 16C. 32D. 525.已知ch是字符型变量,下面不正确的赋值语句是。
A. ch=’a+b’B. ch=’\0’C. ch=’7’+’9’D. ch=7+96.设有int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为。
A. 1B. 2C. 3D. 47. 下列函数定义中,正确的是。
A. void f(int x)B. int f(int *x,int *y){ return(x); } { return(y); }C. int *f(int x,int *y)D. void f(int x,int *y){ return(y);} { return(x+*y); }8. 设有定义:float x,*p=&x;则下列表达式中错误的是。
A. *&pB. *&xC. &*pD. &*x9. 下列数组定义语句中,错误的是。
A. char a[2][3]={{ˊaˊ},{ˊbˊ}};B. int a[][2]={1,2,3,4,5,6};C. int a[][3]={1,2,3,4,5,6};D. int a[][]={{1,2,3},{4,5,6}}; 10.若有定义:int (*p)[4];则标识符p 。
实验一1、计算整数各位数字之和(10 分)输入一个3 位正整数,将其每一位的数字相加,输出和输入格式:输入一个3 位正整数。
变量数据类型为unsigned 。
输出格式:输出整数每一位相加后的整数和。
输入样例:输出样例:【参考答案】#include "" int main(){ unsigned int a,ge,shi,bai,sum;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;sum=ge+shi+bai;printf("%d\n",sum);return 0;}2、计算代数表达式(10 分)求:输入格式:输入角度x。
变量数据类型为double 。
π 为。
输出格式:输出y 的值,精确到小数点后2 位。
输入样例:输出样例:【参考答案】#include <>#include <>#define PIint main(){double x,y;scanf("%lf",&x); y=sqrt((sin(60*PI/180)+1)*(sin(30*PI/180)+1)/cos(x*PI/180));printf("%.2lf",y);return 0;}3、逆序的三位数 (10 分)程序每次读入一个正3 位数,然后输出按位逆序的数字。
有结尾的0 时,输出不应带有前导的0。
比如输入700,输入格式:每个测试是一个3 位的正整数。
输出格式:输出按位逆序的数。
输入样例:输出样例:注意:当输入的数字含输出应该是7。
【参考答案】#include ""int main(){ int a,ge,shi,bai,b;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;b=ge*100+10*shi+bai;printf("%d\n",b);return 0;}4、求整数均值 (10 分)本题要求编写程序,计算4 个整数的和与平均值。
实验一 C简单程序设计1. 以下程序用于输入长方形的长、宽,计算长方形的面积、周长和对角线长。
#include <stdio.h>#include <math.h>main(){float x,y,s,l,r;printf("input x,y=");scanf("%f,%f",&x,&y);s=x*y;l=2*(x+y);r=sqrt(x*x+y*y);printf("s=%6.2f l=%6.2f r=%6.2f ",s,l,r);}请调试运行程序,要求:(1) 编辑、编译、链接并运行程序。
(2) 将输出语句改为 printf("s=%6.3f l=%6.3f r=%6.3f ",s,l,r); ,再运行程序,结果是否有变化?(3) 将程序第4行float x,y,s,l,r;与第6行 scanf("%f,%f",&x,&y); 交换位置,再编译,会如何?(4) 混淆程序中的大小写字母。
试分别将printf写为Printf,或将main写为Main或MAIN,或将程序中语句s=x*y;写为S=x*y; 再编译、链接、运行,结果如何?(5) 遗漏语句未尾分号。
如将printf("input x,y=");的分号去掉,再编译、链接、运行,情况如何?(6) 若遗漏scanf()语句中的“&”符号。
例如:若将 scanf("%f,%f",&x,&y); 改为 scanf("%f,%f",x,y); ,或改为 scanf("%f,%f",&x,y);,再重新编译、链接、运行,情况如何?(7) 将scanf()语句中“%f,%f”改为“%f%f”,输入数据的格式是否要变?(8) 参考教材P360页,C.3 高级调试方法,在程序中设置断点,并单步调试程序。
安徽省c语言考试题库及答案一、单项选择题(每题2分,共20分)1. 在C语言中,用于定义变量的关键字是:A. varB. letC. intD. define答案:C2. 下列哪个选项是合法的C语言常量?A. 0.1E+2B. 0.1e2C. 1.23eD. 1.23E答案:B3. 在C语言中,用于定义一个整型数组的关键字是:A. arrayB. listC. intD. vector答案:C4. 下列哪个选项是C语言中的合法字符串?A. "Hello, World!"B. 'Hello, World!'C. "Hello\nWorld"D. "Hello\World"答案:A5. C语言中,用于定义一个函数的关键字是:A. functionB. defC. defineD. void答案:D6. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. variable$2答案:C7. 在C语言中,用于表示逻辑“与”操作的运算符是:A. &&B. ||C. !D. ==答案:A8. 下列哪个选项是C语言中的合法浮点数?A. 3.14159B. .3.14159C. 3.14.159D. 3.14159e答案:A9. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. classD. typedef答案:A10. 下列哪个选项是C语言中的合法指针声明?A. int *p;B. int *p[];C. int (*p)();D. int (*p)[5];答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个字符型变量的关键字是____。
答案:char2. 在C语言中,用于表示逻辑“或”操作的运算符是____。
大学c语言实践考试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是:A. intB. floatC. doubleD. char答案:A2. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. -variableD. variable$答案:B3. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello World'D. 'Hello World'答案:A4. C语言中,以下哪个运算符用于逻辑与操作?A. &&B. ||C. !D. ~答案:A5. 下列哪个函数用于计算两个数的和?A. max()B. pow()C. sqrt()D. sum()答案:D6. 在C语言中,以下哪个关键字用于定义函数?A. intB. voidC. structD. function答案:B7. C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][4];B. int array[3,4];C. int array(3)(4);D. int array[3 4];答案:A8. 下列哪个选项是C语言中正确的条件语句?A. if x > 0 then y = x;B. if x > 0 { y = x; }C. if x > 0 y = x;D. if (x > 0) y = x;答案:D9. 在C语言中,以下哪个选项是正确的无限循环?A. for(;;)B. while(1)C. do {} while(1)D. All of the above答案:D10. 下列哪个选项是C语言中正确的函数声明?A. int function();B. function int();C. int function int();D. int function(int x);答案:D二、填空题(每空2分,共20分)1. 在C语言中,使用________关键字可以定义一个指针变量。
安徽c语言考试题库及答案1. 单项选择题题目1:在C语言中,以下哪个关键字用于定义一个函数?A. structB. voidC. functionD. int答案: B题目2:以下哪个选项是C语言中的合法变量名?A. _2ndB. int$C. 123abcD. for答案: A2. 多项选择题题目3:在C语言中,以下哪些运算符用于比较操作?A. ==B. !=C. &&D. ||答案: A, B3. 判断题题目4: C语言中,数组的下标是从0开始的。
答案:正确题目5: C语言中,字符串可以使用单引号定义。
答案:错误4. 填空题题目6: C语言中,用于定义一个整型变量的关键字是____。
答案: int题目7:在C语言中,____运算符用于求两个数的和。
答案: +5. 简答题题目8:描述C语言中指针的概念。
答案:在C语言中,指针是一个变量,其存储的是另一个变量的内存地址。
指针可以用来间接访问内存中的数据。
题目9:解释C语言中的结构体是什么?答案:结构体是一种用户自定义的数据类型,它允许将不同的数据类型组合成一个单一的数据结构。
结构体可以包含各种数据类型的成员,如整型、浮点型、字符型等。
6. 编程题题目10:编写一个C语言程序,计算并输出100以内所有偶数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for(int i = 1; i <= 100; i++) {if(i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```。
安徽大学20 -20 学年第学期《C语言程序设计》期末考试试卷(B卷120分钟)年级院系专业姓名学号座位号一. 单项选择题:(每题2分,共20分)下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确选项填在答题卡相应题目的横线上。
答在试卷上不得分。
1.执行程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。
A)60 B)20 C)15 D)102.程序段:int x=023; printf("%d \n", --x );的输出是______。
A)19 B)18 C)23 D)223.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。
A)6 B)5 C)11 D)104.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。
A)返回值为void 类型B)返回值类型无法确定C)返回值为int 类型D)没有返回值5. 有宏定义:#define MULT1(a,b) a*b#define MULT2(a,b) (a)*(b)且引用宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。
A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=216.程序段char s[]="Hello", *p; p=s;执行后,*(p+5)的值是______。
A)'o' B)'\0' C)'o'的地址D)不确定的值7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。
安徽大学c语言考试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义结构体的关键字是()。
A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,用于定义函数的关键字是()。
A. functionB. defC. voidD. int答案:A4. C语言中,用于表示逻辑“与”操作的运算符是()。
A. &&B. ||C. !D. =答案:A5. 下列哪个选项是正确的C语言数组声明?A. int a[10];B. int b[];C. int c = 10;D. int d[10] = {0};答案:A6. 在C语言中,用于定义指针的关键字是()。
A. ptrB. pointC. pointerD. *答案:D7. C语言中,用于文件操作的库函数是()。
A. printfB. scanfC. fopenD. fclose答案:C8. 下列哪个选项是C语言中的预处理命令?A. #defineB. typedefC. enumD. struct答案:A9. 在C语言中,用于声明函数的关键字是()。
A. functionB. defC. voidD. int答案:D10. C语言中,用于定义枚举类型的关键字是()。
A. enumB. structC. unionD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个常量。
答案:const2. C语言中,字符串字面量需要使用________符号括起来。
答案:""3. C语言中,使用________关键字可以定义一个全局变量。
答案:extern4. 在C语言中,________运算符用于计算两个变量的差。
安徽大学C语言实验平台作业答案Company number:【0089WT-8898YT-W8CCB-BUUT-202108】实验三C基本数据类型及运算1. 编程:根据需要定义相关变量,键盘输入、、三个实数分别赋给相关三个变量,输出该3个变量的和s、乘积p 和平均值a。
2. 编程:输入球的半径,计算球体表面积和球体积。
3. 编程:定义6个变量,通过键盘将“10,-10, 40000, a,,hello”这六个值分别赋给相应变量,然后在屏幕上输出变量的值(每行输出一个变量)。
4. 编程:从键盘接收1个字符给变量s1,1个字符串(允许带有空格)给字符数组s2,输出字符变量s1的ASCII 码值及字符数组s2中的字符串。
5. 编程:从键盘输入二个整数分别赋给整型变量a、b,将它们按由小到大的顺序输出。
6. 编程:调用标准库函数sin(x)计算6800的正弦值(此题为选做)。
7. 编程:键盘输入一个实数赋给变量x,计算 y=x*x*x+x*x+x 的值,分别输出y值、y值的整数部分和小数部分(此题为选做)。
8. 编程:键盘输入四个整数分别赋给整型变量a、b、c、d,用三目运算方法将它们按由大到小的顺序输出(此题为选做)。
1.#include<>main(){float x,y,z,s,p,a;scanf("x=%fy=%fz=%f",&x,&y,&z);s=x+y+z;p=x*y*z;a=s/3;printf("s=%f,p=%f,a=%f",s,p,a);}2.#include<>main(){float r,s,v;printf("input r");scanf("%f",&r);s=4**r*r;v=4/3**r*r*r;printf("s=%f,v=%f",s,v);}3.#include<>main(){int a,b;long c;char d,st[6];float e;scanf("%d%d%ld%c%f%s",&a,&b,&c,&d,&e,st);printf("a=%d\n,b=%d\n,c=%d\n,d=%c\n,e=%f\n,ch=%s",a,b,c,d,e,st);}4.#include<>main(){ char s1,s2[6];scanf("%c%s",&s1,s2);printf("s1=%d,s2=%s",s1,s2);}5.#include<>main(){ int a,b;scanf("a=%db=%d",&a,&b);if (a<b)printf("a=%db=%d",a,b);elseprintf("b=%da=%d",b,a);}6.#include<>#include<>main(){float a,b;scanf("%f",&a);b=sin(a);printf("%f",b);}7.#include<>main(){float x,y,b;int a;scanf("%f",&x);y=x*x*x+x*x+x;a=(int)y;b=y-a;printf("%f\n%d\n%f\n",y,a,b);}实验四C分支结构程序设计1. 编程:从键盘输入一个字符,如是大写字母,则输出相应小写字母;如是小写字母,则原样输出;其它字符输出“Not letter!”。
安徽大学C语言实验平台作业答案Document number:WTWYT-WYWY-BTGTT-YTTYU-2018GT实验三C基本数据类型及运算1. 编程:根据需要定义相关变量,键盘输入、、三个实数分别赋给相关三个变量,输出该3个变量的和s、乘积p和平均值a。
2. 编程:输入球的半径,计算球体表面积和球体积。
3. 编程:定义6个变量,通过键盘将“10,-10, 40000, a,,hello”这六个值分别赋给相应变量,然后在屏幕上输出变量的值(每行输出一个变量)。
4. 编程:从键盘接收1个字符给变量s1,1个字符串(允许带有空格)给字符数组s2,输出字符变量s1的ASCII码值及字符数组s2中的字符串。
5. 编程:从键盘输入二个整数分别赋给整型变量a、b,将它们按由小到大的顺序输出。
6. 编程:调用标准库函数sin(x)计算6800的正弦值(此题为选做)。
7. 编程:键盘输入一个实数赋给变量x,计算 y=x*x*x+x*x+x 的值,分别输出y值、y值的整数部分和小数部分(此题为选做)。
8. 编程:键盘输入四个整数分别赋给整型变量a、b、c、d,用三目运算方法将它们按由大到小的顺序输出(此题为选做)。
1.#include<>main(){float x,y,z,s,p,a;scanf("x=%fy=%fz=%f",&x,&y,&z);s=x+y+z;p=x*y*z;a=s/3;printf("s=%f,p=%f,a=%f",s,p,a);}2.#include<>main(){float r,s,v;printf("input r");scanf("%f",&r);s=4**r*r;v=4/3**r*r*r;printf("s=%f,v=%f",s,v);}3.#include<>main(){int a,b;long c;char d,st[6];float e;scanf("%d%d%ld%c%f%s",&a,&b,&c,&d,&e,st);printf("a=%d\n,b=%d\n,c=%d\n,d=%c\n,e=%f\n,ch=%s",a,b,c,d,e,st);}4.#include<>main(){ char s1,s2[6];scanf("%c%s",&s1,s2);printf("s1=%d,s2=%s",s1,s2);}5.#include<>main(){ int a,b;scanf("a=%db=%d",&a,&b);if (a<b)printf("a=%db=%d",a,b);elseprintf("b=%da=%d",b,a);}6.#include<>#include<>main(){float a,b;scanf("%f",&a);b=sin(a);printf("%f",b);}7.#include<>main(){float x,y,b;int a;scanf("%f",&x);y=x*x*x+x*x+x;a=(int)y;b=y-a;printf("%f\n%d\n%f\n",y,a,b);}实验四?C分支结构程序设计1. 编程:从键盘输入一个字符,如是大写字母,则输出相应小写字母;如是小写字母,则原样输出;其它字符输出“Not letter!”。
安徽大学20 12 —20 13 学年第 1 学期《高级语言程序设计》(A卷)考试试题参考答案及评分标准一、单项选择题(本大题共10小题,每小题2分,共20分)每小题的四个选项中只有一个符合题目要求,请将正确选项前字母填在括号中。
1.A 2.C 3.D 4.C 5. A 6. B 7. C 8. D 9. D 10. C二、填充题(本大题共10小题,每小题2分,共20分)1. 其之前最近的if2. (x>2 && x<3) || x<-103. 34. 05. 整型常量或整型常量表达式6. 单向值传递(或值传递)7. 局部变量 8. 89. x[3][2] 10. 5.14三、阅读程序题(20分,每题5分)阅读程序,按格式将程序运行的输出结果填写在题目右侧的空白处。
(1)12624120 【每个数字各1分】(2)56 45 34 23 12 【每个数字各1分】(3)#&*&% 【每个字符各1分】(4) ************* 【每行字符各1分】四、程序填充题(10分,每题5分)(1)i-1 【2分】a[j+1]=a[j] 【2分】a[j+1] 【1分】(2)r 【2分】fgetc(fp) 【2分】count++ 【1分】五、程序设计题(30分,每题10分)(1)#include <stdio.h>int main( void ){short a, b, c, i;【定义 1分】printf("水仙花数:");for(i=100; i<=999; i++)【循环 1分】{a=i%10; 【计算个位 2分】b=i%100/10; 【计算十位 2分】c=i/100; 【计算百位 2分】if(i==a*a*a+b*b*b+c*c*c)【判断 1分】printf("%5d,",i);【输出 1分】}printf("\n");return 0;}(2)#include <stdio.h>void main(){int cocks=0,hens,chicks; 【定义及初值2分】while(cocks<=20){ 【循环控制 2分】hens=0; 【hens初值 1分】while(hens<=33){ 【循环控制 2分】chicks=100-cocks-hens;if(5.0*cocks+3.0*hens+chicks/3.0==100.0)【条件判断 2分】printf("公鸡=%d;母鸡=%d;小鸡=%d \n",cocks,hens,chicks);【输出 1分】hens++;}cocks ++;}}(3)#include<stdio.h>void main(){struct DATE{int year ;int month ;int day;}today; 【结构体定义 2分】int x[]={0,31,28,31,30,31,30,31,31,30,31,30},i,j,y,m,d;s=0; 【定义及初值 2分】printf("Input today yy mm dd:");scanf("%d%d%d",&today.year,&today.month,&today.day) 【成员赋值 2分】y=today.year;m=today.moth;d=today.day;for (i=1;i<m;i++) s+=x[i];s+=d; 【贫年天数计算2分】if (y%4==0&&y%100!=0||y%400==0)&&(m>=3)s++; 【闰年判断 2分】printf("Today is the %d days of this year",s);}。
安徽大学20 08 —20 09 学年第 二 学期《C 语言程序设计》考试试卷(B 卷)(闭卷 时间120分钟)一、单项选择题(每小题2分,共20分):下列各题A)、B)、C)、D)四个选项中只有一个是正确的,请将正确 选项填在答题卡相应题目的横线上。
答在试卷上不得分。
1. 设x 为整型变量,和表达式“!(!x)”值完全相同的表达式是【______】 A. x==0B. x==1C. x!=0D. x!=12. 下面程序段执行后,a 的值是【______】。
int a;printf("%d \n", (a=4*5, a*4, a+5) ); A. 60 B. 20 C. 15 D. 10 3. 判断字符串s1与字符串s2相等,应当使用【_______】。
A. if (s1 = s2)B. if (strcmp(s1, s2))C. if (!strcmp(s1, s2))D. if (strcmp(s1, s2) = 0)4. 若有定义int (*p)[4],则标识符p 是一个【_______】。
A. 指向整型变量的指针变量B. 指向函数的指针变量C. 指向有四个整型元素的一维数组的指针变量D. 指针数组名,有四个元素,每个元素均为一个指向整型变量的指针5. 下列程序的执行结果是【_______】。
#include "stdio.h" #include "string.h" void main( void ) {char s[10]={ 'H', 'e', 'l', 'l', 'o'}; printf("%d\n",strlen(s)); }院/系 年级 专业 姓名 学号答 题 勿 超 装 订 线 ------------------------------装---------------------------------------------订----------------------------------------线----------------------------------------A. 5B. 6C. 10D. 116.下列对字符串的定义中,错误的是【______】。
c语言程序设计实验教程课后答案C语言程序设计实验教程课后答案C语言是一种广泛使用的计算机编程语言,以其高效、灵活和功能强大而著称。
学习C语言不仅能够帮助学生理解计算机程序设计的基础,而且能够为学习更高级的编程语言打下坚实的基础。
以下是一些常见的C语言程序设计实验教程课后问题及其答案。
问题1:编写一个C程序,计算并输出两个整数的和。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数的和是:%d\n", sum);return 0;}```问题2:编写一个C程序,判断一个整数是否为素数。
答案:```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1) return 0;for (int i = 2; i <= sqrt(n); i++) {if (n % i == 0) return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d 是素数。
\n", num);} else {printf("%d 不是素数。
\n", num);}return 0;}```问题3:编写一个C程序,实现简单的学生成绩管理系统。
答案:```c#include <stdio.h>struct Student {char name[50];int score;};int main() {struct Student students[3] = {{"Alice", 85},{"Bob", 90},{"Charlie", 78}};int i;printf("学生成绩列表:\n");for (i = 0; i < 3; i++) {printf("%s: %d\n", students[i].name, students[i].score);}return 0;}```问题4:编写一个C程序,实现字符串的反转。
安徽大学20XX----20XX学年第二学期C语言程序设计期中试题一、单项选择题(30分,每题2分)每小题的四个选项中只有一个符合题目要求,请将正确选项前字母填在括号中。
1.若int a[][3]={1,2,3,4,5,6};则a[1][0]的值是【______】。
A. 4B. 2C. 1D. 52.执行下列程序段后,变量k的值是【______】。
int k=3, s[2];s[0]=k;k = s[1]*10;A)不确定B)0C)10 D)303.执行下列程序段后,变量k的值是【______】。
int k=3, s[2]={1};s[0]=k;k = s[1]+10;A)不确定B)0C)10 D)304.下面程序的输出结果是【______】。
#include <stdio.h>void main(void){int i, a[10];for(i=9;i>=0; i--)a[i]=10-i;printf("%d%d%d\n",a[2],a[5],a[8]);}A)258 B)741C)852 D)3695.下面程序的输出结果是【______】。
#include <stdio.h>void main(void){int a[3][3]={1,2,3,4,5,6,7,8,9},i;for(i=0;i<3; i++)printf("%d ",a[i][2-i]);}A)1 5 9 B)3 5 7C)1 4 7 D)3 6 96.下面程序的输出结果是【______】。
#include "stdio.h"void fun(int a[]){int i;for(j=0;j<5; j++)a[j]=j;}void main(void){int num[]={5,6,7,8,9}, i;fun(num);for(i=0;i<5; i++)printf("%d ", num[i]);}A. 56789B. 98765C. 01234D. 432107.下面程序的输出结果是【______】。
安徽省c语言题库及详解答案安徽省C语言题库及详解答案安徽省作为教育大省,在计算机编程语言的教学上也具有较高的水平。
C语言作为计算机编程的基础语言之一,其题库及答案详解对于学生来说具有很高的参考价值。
以下是安徽省C语言题库中的几道典型题目及其详解答案。
1. 题目一:编写一个程序,计算并输出1到100的累加和。
```c#include <stdio.h>int main() {int sum = 0, i;for (i = 1; i <= 100; i++) {sum += i;}printf("1到100的累加和为:%d\n", sum);return 0;}```2. 题目二:编写一个程序,实现输入两个整数,输出它们的平均值。
```c#include <stdio.h>int main() {int num1, num2;float average;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);average = (num1 + num2) / 2.0;printf("两个整数的平均值为:%f\n", average); return 0;}```3. 题目三:编写一个程序,判断一个整数是否为素数。
```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1) return 0;for (int i = 2; i <= sqrt(n); i++) {if (n % i == 0) return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num)) {printf("%d 是素数。
C语言基本概念能将高级语言编写的源程序转换成目标程序的是______。
A) 编辑程序B) 编译程序C) 解释程序D) 链接程序以下选项中合法的用户标识符是______。
A) long B) _2Test C) 3Dmax D) A.dat以下叙述正确的是()A) 可以把define和if定义为用户标识符B) 可以把define定义为用户标识符,但不能把if定义为用户标识符C) 可以把if定义为用户标识符,但不能把define定义为用户标识符D) define和if都不能定义为用户标识符以下叙述正确的是()A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚、具有其他语言的一切优点在一个C语言程序中_______A) main函数必须出现在所有函数之前B) main函数必须出现在所有函数之后C) main函数可以在任何地方出现D) main函数必须出现在固定位置一个C语言程序是由_______组成的。
A) 一个主程序和若干子程序B) 若干子程序C) 函数D) 若干过程以下叙述中正确的是()A) C语言的源程序不必通过编译就可以直接运行B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令C) C源程序经编译形成的二进制代码可以直接运行D) C语言中的函数不可以单独进行编译下列关于C语言用户标识符的叙述中正确的是()A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头C) 用户标识符中不可以出现中划线,但可以出现下划线D) 用户标识符中可以出现下划线和中划线(减号)以下说法中正确的是()A)C语言程序总是从第一个定义的函数开始执行B)C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分一个C程序的执行是从()A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束C语言编程整个操作的过程是()A)编辑、编译、链接、执行B)编译、编辑、链接、执行C)链接、编译、编辑、执行D)编辑、链接、编译、执行下列说法不正确的是()A)链接操作将生成扩展名为.lnk的文件B)编辑过程将生成扩展名为.cpp或.c的文件C)编译过程将生成扩展名为.obj的文件C)C编程最终要生成扩展名为.exe的文件C语言提供了丰富的结构化语句,直接支持____、_____和_______三种基本程序结构。
C语言实验参考答案详细版安徽大学c语言实验参考答案-详细版-安徽大学一c语言实验参考答案实验15、输入并运行自已编写的程序(教材第一章p14三编程题)。
实验二1.编写一个程序,从键盘接收三个实数(分别为10.0、20.0和5.0),并输出三个数字的和s、积T和平均值a。
#includemain(){floatx,y,z,s,t,a;printf(“x,y,z=”);scanf(“%f、%f、%f”、&x、&y、&z);s=x+y+z;t=x*y*z;a=s/3;printf(“s=%f,t=%f,a=%f\\n”,s,t,a);}2.编程。
用户需要输入两个整数a和B(分别为20和10),从键盘读取用户输入的值,然后:1)用整数输出这两个数的和、差;2)输出两个长整数的乘积和浮点数的商;3)两个数字的剩余部分用整数输出,平均值用浮点#include输出2main(){inta,b,he,c ha,yu;longji;floatshang,aver;printf(“a,b=”);scanf(“%d,%d”,&a和b);他=a+b;cha=a-b;ji=(长)a*b;商=1.0*a/b;yu=a%b;平均值=(a+b)/2.0;printf(“a+b=%d,a-b=%d,a*b=%ld\\n”,he,cha,ji);printf(“a/b=%f,a%%b=%d,aver=%f\\n”,shang,yu,ave r);}3.再次运行程序问题2中的程序,使整数a和B的值分别为10和20,分析程序的运行结果并给出说明。
程序同上。
实验三1.编写一个程序,从键盘接收一位整数。
转换后,将使用字符函数putchar输出。
例如,输入整数5,程序运行后将输出字符5。
#include三main(){inta;charc;printf(“a=”);scanf(“%d”,&a);c=a+48;putchar(c);}2.编程。
实验三?C基本数据类型及运算1. 编程:根据需要定义相关变量,键盘输入、、三个实数分别赋给相关三个变量,输出该3个变量的和s、乘积p和平均值a。
???? 2. 编程:输入球的半径,计算球体表面积和球体积。
???? 3. 编程:定义6个变量,通过键盘将“10,? -10,? 40000,? a,? ,? hello”这六个值分别赋给相应变量,然后在屏幕上输出变量的值(每行输出一个变量)。
???? 4. 编程:从键盘接收1个字符给变量s1,1个字符串(允许带有空格)给字符数组s2,输出字符变量s1的ASCII码值及字符数组s2中的字符串。
???? 5. 编程:从键盘输入二个整数分别赋给整型变量a、b,将它们按由小到大的顺序输出。
???? 6. 编程:调用标准库函数sin(x)计算6800的正弦值(此题为选做)。
???? 7. 编程:键盘输入一个实数赋给变量x,计算 y=x*x*x+x*x+x 的值,分别输出y值、y值的整数部分和小数部分(此题为选做)。
???? 8. 编程:键盘输入四个整数分别赋给整型变量a、b、c、d,用三目运算方法将它们按由大到小的顺序输出(此题为选做)。
1. #include<>main(){float x,y,z,s,p,a;scanf("x=%fy=%fz=%f",&x,&y,&z);s=x+y+z;p=x*y*z;a=s/3;printf("s=%f,p=%f,a=%f",s,p,a);}2. #include<>main(){float r,s,v;printf("input r");scanf("%f",&r);s=4**r*r;v=4/3**r*r*r;printf("s=%f,v=%f",s,v);}3. #include<>main(){int a,b;long c;char d,st[6];float e;scanf("%d%d%ld%c%f%s",&a,&b,&c,&d,&e,st);printf("a=%d\n,b=%d\n,c=%d\n,d=%c\n,e=%f\n,ch=%s",a,b,c,d,e,st);}4. #include<>main(){ char s1,s2[6];scanf("%c%s",&s1,s2);printf("s1=%d,s2=%s",s1,s2); }5. #include<>main(){ int a,b;scanf("a=%db=%d",&a,&b);if (a<b)printf("a=%db=%d",a,b);elseprintf("b=%da=%d",b,a);}6. #include<>#include<>main(){float a,b;scanf("%f",&a);b=sin(a);printf("%f",b);}7. #include<>main(){float x,y,b;int a;scanf("%f",&x);y=x*x*x+x*x+x;a=(int)y;b=y-a;printf("%f\n%d\n%f\n",y,a,b);}实验四?C分支结构程序设计1. 编程:从键盘输入一个字符,如是大写字母,则输出相应小写字母;如是小写字母,则原样输出;其它字符输出“Not letter!”。
???? 2. 编程:判断输入的正整数是否既是3又是5的整数倍。
若是,输出Yes,否则输出No。
???? 3. 编程:从键盘输入三个整数,分别赋给变量a,b,c,输出其中的最大值(要求不改变a、b、c的值)。
???? 4. 编程:用scanf输入任意两个数分别赋给变量a、b,若a大于等于b,则直接输出a、b,否则将a、b的值交换(即a的原值放入b中,b的原值放入a中)后再输出。
???? 5. 编程:输入整数a和b,若a2+ b2大于100,则输出a2+ b2百位以上的数字,否则输出两数之和。
???? 6. 编程:从键盘输入三个整数,分别赋给变量a,b,c,请按从小到大的顺序依次输出a、b、c(要求不改变a、b、c的值)。
???? 7. 编程:从键盘输入三个整数,分别赋给变量a,b,c,请按从小到大的顺序依次将这三个数存放于a、b、c中,最后输出a、b、c。
???? 8. 编程:由系统生成一个10以内的随机整数,用户从键盘上输入一个10以内的整数,如果两者相等输出“OK”,否则输出“ERROR”。
???? 注:随机数的生成必须包含头文件#include <>、#include <>,必须用初始化语句srand((unsigned)time(NULL));,表达式rand()%a+1的值为1~a内的随机整数1. #include<>main(){char x;scanf("%c",&x);if(x>='a'&&x<='z')printf("%c",x);else if (x>='A'&&x<='Z')printf("%c",x+32);else printf("Not letter!"); }2. #include<>main(){int x;scanf("%d",&x);if (x>0){ if(x%3==0&&x%5==0)printf("Yes\n");else printf("No\n");}else printf("Error!");}3. #include<>main(){int a,b,c,max;scanf("%d%d%d",&a,&b,&c);max=a>b?a:b;max=max>c?max:c;printf("a=%d,b=%d,c=%d,max=%d",a,b,c,max); }4. #include<>main(){float a,b;scanf("%f%f",&a,&b);if(a<b){a=a+b;b=a-b;a=a-b;};printf("a=%f,b=%f\n",a,b);}5.#include<>main(){int a,b,t,r,s;scanf("%d%d",&a,&b);r=a*a+b*b;t=r/100;if(r>100)printf("%d",t);else printf("%d",s);}6.#include<>int main(){int a,b,c,d,max,min; scanf("%d%d%d",&a,&b,&c); if(a>=b){max=a;min=b;}else{max=b;min=a;}if(c>=max)if(c<=min)min=c;d=a+b+c-min-max;printf("%d %d %d\n",min,d,max); }7.#include <>main(){ int a, b, c, d;scanf("%d%d%d",&a,&b,&c);if(a>=b){d = a;a = b;b = d;}else if(b>=c){ d = b;b = c;c = d; }printf("a=%d b=%d c=%d",a,b,c);}8.#include<>#include<>#include<>main(){int a,b;srand((unsigned)time(NULL));b=rand()%10+1;scanf("%d",&a);printf("a=%d,随机数b=%d\n",a,b);if(a==b)printf("OK!\n");else printf("ERROR!\n");}实验五?C多分支结构程序设计*1. 编程:计算奖学金ss的值,已知奖学金ss与成绩s的关系为:????????????具体要求:??????????????? (1)用 if 语句实现分支结构的编程。
????????????? (2)s为整型,ss要求精确到小数点后二位。
????????????? (3)用scanf函数给s赋值,且输入前有相应提示。
????????????? (4)结果输出时采用以下形式:?????????????????? 成绩s=具体值,奖学金ss=具体值???? 2.? 设函数f(x)如下,求函数函数法f(x)的值。
????????????????????????????????????具体要求:??????????????? (1)用条件表达式编程。
????????????? (2)用if语句编程。
????????????? (3)用scanf函数给自变量赋值,且输入前有相应提示。
????????????? (4)结果输出时采用以下形式:?????????????????? x=具体值,f(x)=具体值????????????? (5)给出你所使用的测试用例。
????????????提示:????????????按C的语法规则,标识符由字母、数字、下划线组成,不能将f(x)作为变量名,本题中,函数名可起为 f 或 y 等。
但作为非格式控制字符,f(x)完全可以出现在printf 函数的双引号内。