四川大学C语言上机考试题
四川大学C语言题库
输入十进制数,输出该数的十六进制数。
#include <>int main(void){int n;printf("input:");scanf("%d", &n);printf("output:%X\n", n);return 0;输入实型数据a,b,然后输出a、b的值。
#include <>int main(void){double number1, number2;printf("please input two numbers:");scanf("%lf,%lf", &number1, &number2);printf("Output:\n");printf("a=%f,b=%f\n", number1, number2);return 0;输入一个小写英文字母,第一输出它及其ASCII码,然后输出其对应的大写字母及其ASCII 码int main(void){char ch;printf("Input a lowercase letter:");ch = getchar();printf("Output:\n");printf("%c(%d)\n", ch, ch);printf("%c(%d)\n", ch - 32, ch - 32);return 0;从键盘输入一个正三角形的边长(整型),计算该三角形的面积和周长#include <>int main(void){int side;printf("Input a side of triangle: ");scanf("%d", &side);printf("Output:\n");printf("The area of triangle is %.2f, the circle of triangle is %.0f.\n", * side *side * sqrt(3) / 4, * side);return 0;}从键盘读入一个任意字符,输出该字符ASCII的十六进制小写值#include <>int main(void){char ch;printf("Input a character: ");ch = getchar();printf("Output:%x\n", ch);return 0;从键盘输入一个正方体的边长(整型),计算该正方体的体积和表面积#include <>int main(void){int side;printf("Input a side of cube: ");scanf("%d", &side);printf("Output:\nThe volume of cube is %d, the surface area of cube is %d.\n", side * side * side, 6 * side * side);return 0;#include <>从键盘输入X,Y,Z的值#include <>int main(void){int float_z;double float_x, float_y;printf("please input x,y,z:");scanf("%lf,%lf,%d", &float_x, &float_y, &float_z);printf("Output:");printf("%f\n", float_x + float_z % 3 * (int)(float_x + float_y) % 2 / 4);return 0;}从键盘输入一日期,年月日之间以“-”分隔,并以一样的形式但以“/”作分隔符输出。
四川大学计算机上机考试题库第二套
四川大学计算机上机考试题库第二套第二套原始编辑者2011级华西口腔QIAO YUE YIN1.B 第三代计算机出现了B操作系统2..D URL是统一的资源定位器3.C 计算机的工作过程是不断地取指令、分析指令和执行指令,最后将计算的结果存入存储器中,选最长的4.A 实时监测控制不是因特网的基本概念5.A IT是指信息技术6.C 冯诺依曼计算机的指令行业数据均以二进制的形式存在7.A 计算机常用的外部存储器是软盘、硬盘、光盘、U盘,不包括高速缓冲存储器、主存储器、手机8.A 程序是解决某个问题的计算机语言的有限命令的有序集合9.B 键盘输入不属于计算机应用中的人工智能10.C 存储器可以分为内外存储器,注意不是RAM和ROM11.D办公自动化是计算机的一项应用,按照计算机应用分类属于数据处理12.A 计算机网络最突出的优点是共享资源13.C 计算机网络的目标是实现资源共享和信息传输,最长的选项14.D 目前,制造计算机使用的电子器件一般是大规模超大规模集成电路15.D 不正确的是信息是一成不变的16.D 不同的计算机系统通常有各自的指令系统17.A 奥运会中国金牌数第一,传遍大江南北,说明信息具有传递性18.D WINDOWS \UNIX 都是系统软件19.B 正确的是RAM中的信息断电后无法保存20.D 指令系统的功能是否强大,指令类型是否丰富,决定了计算机的能力21.B 操作码指明了操作的性质22.B u盘是外部设备23.C 计算机中数据存储的最小单位是BIT ,不是BYTE24.A 中国教育和科研计算机网络简称CERNET,就是CHINA EDUCATION &RESEARCH NET25.D 卫星上天,得到数据信息和情报是采集信息的过程26.通用的网络互联设备有网关、网桥和路由器27.RAM 是随机或者随机存取存储器28.正在运行的程序存放在内存中29.二进制使用 2 个字符30.物理信道可以根据传输介质是否有形,分为有线信道和无线信道。
四川大学 《C语言程序设计0008》15秋在线作业2满分答案
四川大学《C语言程序设计0008》15秋在线作业2满分答案一、单选题(共 25 道试题,共 100 分。
)1. 若x的初值为10,则表达式(x>10?x+100 : x-10)的值是( )。
A. 10B. 0C. 100D. 1正确答案:B2. 若有代数式,则不正确的C语言表达式是( )A. a/c/d*b*2B. 2*a*b/c/dC. 2*a*b/c*dD. a*b/c/d*2正确答案:C3. 若整型变量a,b,c,d的值依次为:1,4,3,2,则条件表达式aq.Type = "1"; q.ObjectID[q.ObjectID.length] = "rdo_899f1843-0f05-47d1-a3fd-45c325b7d297_Response" q.Response[q.Response.length] = "Response"; q.Answer[q.Answer.length] = "";A. 1B. 2C. 3D. 4正确答案:A4. 在C语言中,下述正确的是()。
A. do-while语句构成的循环不能用其它语句构成的循环代替B. do-while语句构成的循环只能用break语句退出C. 用do-while语句构成的循环,在while 后的表达式为非0时结束循环D. 用do-while语句构成的循环,在while 后的表达式为0时结束循环正确答案:D5. 以下程序中的输出结果是()。
main( ) { int i ,k a[10],p[3]; k=5;for(i=0;i<10;i++) a=i; for(i=0;i<3;i++) p=a[i*(i+1)]; for(i=0;i<3;i++) k+=p*2; printf(“%dn”,k); }A. 20B. 21C. 22D. 23正确答案:B6. 以下程序执行后sum的值是()。
C语言上机作业试题5套含答案
第一次上机作业(2021):要求:独立完成,上机调试通事后上交作业提交邮件主题命名:班级学号姓名(第1次作业),例如:电1301班2王鹏(第1次作业)以附件形式将每次作业的所有程序源程序紧缩打包后提交,紧缩文件命名格式同上。
程序必需采用缩进格式1.大写字母转换成小写字母从键盘输入一个大写英文字母,输出相应的小写字母。
例:输入G输出g2.求平方根输入一个实数x,计算并输出其平方根(保留1 位小数)。
例:输入17输出The square root of is3.温度转换设计一个程序将华氏温度转换成摄氏温度c = 5/9(f-32)a)输入华氏温度(实型)b)输出的摄氏温度结果保留两位小数例:Please input Fahrenheit temperature:The corresponding Celsius temperature is4. 计算旅途时刻输入二个整数time1 和time2,表示火车的起身时刻和抵达时刻,计算并输出旅途时刻。
(输入的有效的时刻范围是0000 到2359,不需要考虑起身时刻晚于抵达时刻的情形。
)例:输入712 1411 (起身时刻是7:12,抵达时刻是14:11)输出The train journey time is 6 hours 59 minutes.5. 数字加密输入一个四位数,将其加密后输出。
方式是将该数每一名上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。
例:输入1257输出The encrypted number is 4601试探题:你可否编程找出谁做的好事?有四位同窗中的一名做了好事,不留名,夸奖信来了以后,校长问这四位是谁做的好事。
⏹A说:不是我。
⏹B说:是C。
⏹C说:是D。
⏹D说:他乱说。
已知三个人说的是实话,一个人说的是谎话。
此刻要依照这些信息,找出做了好事的人。
四川大学2012年C语言上机考试复习题~EF1E1
有以下程序#include <stdio.h>void main(){ char k; int i;for(i=1;i<3;i++){ scanf("%c",&k);switch(k){ case '0': printf("another\n");case '1': printf("number\n");}}}程序运行时,从键盘输入:01↙,程序执行后的输出结果是___anothernumbernumber下面程序的输出是_x=4 ___。
#include<stdio.h>main(){ int i,j,x=0;for(i=0;i<2;i++){ x++;for(j=0;j<-3;j++){ if(j%3)continue;x++;}x++;}设x为int型变量,则执行以下语句后,x的值为:0int x = 10;x*=x/=-x;printf("%d\n", --x);若有代数式(其中e代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是sqrt(fabs(pow(n,x)+exp(x)))有如下程序#include <stdio.h>void main(){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是______。
a=2,b=1若有int a=2,b=5,则a / b 的结果为:0在C语言中,合法的基本数据类型关键字是______。
long下面四个选项中,合法的用户自定义标识符是:()a_b3有以下程序#include <stdio.h>void main(){ int i;for(i=0;i<3;i++)switch(i){ case 1: printf("%d",i);case 2: printf("%d",i);default: printf("%d",i);}}执行后输出的结果是______。
c语言上机考试题库
c语言上机考试题库单项选择题1.有char c=’1’,下面说法中正确的是()。
A. 语句putc+2);的输入结果为51B. 语句put“%d”,c+2);的输出结果为3C. 语句put“%c”,c+2);的输入结果为51D. 语句put“%c”,c+2);的输出结果为32.设c1,c2均就是char型变量,则下面不恰当的函数调用为()。
A. scanf(”c1=2=%c”,&c1,&c2);B. get);C. putc2);D. putc1,c2);3.为了表示关系x>=y>=z,下面C语言表达式中正确的是()。
A. (x>=y)&&(y>=z)B. (x>=y)and(y>=z)C. (x>=y>=z)D. (x>=y)&(y>=z)4.设x,y,z,t为int型变量,则继续执行以下语句后,t的值()。
x=y=z=1;t=++x||++y&&++z;A. 不定值B. 2C. 1D. 05.对if语句中表达式的类型,下面正确的说法是()。
A. 必须就是关系表达式B. 必须是关系表达式或逻辑表达式C. 可以就是任一表达式D. 必须是关系表达式或算术表达式6.对for(表达式1;;表达式3)可以认知为()。
A. for(表达式1;0;表达式3)B. for(表达式1;表达式1;表达式3)C. for(表达式1;1;表达式3)D. for(表达式1;表达式3;表达式3)7.执行语句for(i=1;i++<4;);之后,变量i的值为()。
A. 3B. 4C. 5D. 不确定8.若二维数组a存有m列,则在a[i][j]前的元素个数为()。
A. j*m+iB. i*m+jC. i*m+j-iD. i*m+j+19.下面说法中正确的是()。
A. 在C语言中,可以采用动态内存分配技术,定义元素个数气门的数组B. 在C语言中,数组元素的个数可以不确定,允许随即变动C. 在C语言中,数组元素的数据类型可以不一致D. 在C语言中,定义数组后,就确定了它能容纳的相同数据类型元素的个数10.无法把字符串:“good!”参数值数组b的语句就是()。
C语言上机考试经典试题(3套)
四川省普通高等学校计算机应用知识和能力第二十八次等级考试二级(C与C++语言) 笔试试卷时间: 2008年4月19 日( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B )1. 在程序设计中,常用一维数组来表示线性表的顺序存储空间。
( 1 )2. 数据在计算机内存中的表示是指数据的存储结构。
( 2 )3. Windows是多用户多任务操作系统。
( 3 )4. 能影响中断响应次序的技术是中断优先级和中断屏蔽。
( 4 )5. 链表可以随机访问任意一个结点,而顺序表则不能。
( 5 )6. 作业与进程的主要区别是前者是由用户提交,后者是由系统自动生成。
( 6 )7. 数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储结构无关,是独立于计算机的。
( 7 )8. 中断控制方式适用于外存同CPU之间进行大量数据交换。
( 8 )9. 提供没有错误的程序是提高软件的可维护性的基本措施。
( 9 )10.软件结构是以指令为基础而组成的一种控制层次结构。
( 10 )二、选择题(每小题1分,共5分)1. 数据流图是用于描述结构化方法中(11 )工作阶段的工具。
11 (A) 可行性分析(B) 程序编码(C) 详细设计(D) 需要分析2. 若进栈序列为1,2,3,4,且进栈过程中可以出栈,则不可能的出栈序列是(12 )。
12 (A) 1,4,3,2 (B) 3,1,4,2(C) 2,3,4,1 (D) 3,4,2,13. 任何两个并发进程之间(13 )。
13 (A) 可能存在同步或互斥关系(B) 一定存在同步关系(C) 一定彼此独立无关(D) 一定存在互斥关系4. 以下的哪个特征不是分时操作系统的主要特征(14 )。
14 (A) 分时性(B) 独占性(C) 交互性(D) 多路性5. 需求分析中开发人员主要从用户那里了解(15 )。
15 (A) 软件的维护(B) 软件的结构(C) 软件做什么(D) 软件的测试1. C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是(16 )。
四川大学C语言上机考试题
1.有以下程序#include <stdio.h>void main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出的结果是___D___。
A.2B.编译时有错,无结果C.4D.32.设x为int型变量,则执行以下语句后,x的值为:int x = 10;x*=x/=-x;printf("%d\n", --x); --D---A.10B.1C.-10D.03.下面程序的输出是_C___。
main(){ int x,i;for(i=1;i<=100;i++){ x=i;if(++x%2==0)if(++x%3==0)if(++x%7==0)printf("%d ",x);}}A.39 81B.42 84C.28 70D.26 684.在C语言中,合法的字符常量是---B----A."a"B.'\t'C.97D.a5.已知int x=12,y=3;执行下述程序后,变量x的值是_D___。
do{ x/=y--;}while(x>y);printf("%d\n",x);}A.2B.1C.3D.程序运行有错误6.有以下程序#include <stdio.h>void main(){ int m=3,n=4,x;x=-m++;x=x+8/++n;printf("%d\n",x);}程序运行后的输出结果是__C____。
A.3B.5C.-2D.-17.若a、b、c1、c2、x、y均是整型变量,正确的switch语句是______。
四川大学网络教育《C 语言程序设计》复习资料期末考试复习题及参考答案
《C语言程序设计》复习资料一.单项选择题1.下面哪一个是合法的用户自定义标示符( D )(A) b-b (B) float (C) <fr> (D) _isw2.a、b为两个bool型变量,如下哪一个表达式能够表达“a、b同时为真或同时为假”的含义?(C )(A)a&&b||a (B)(a&&b)||!b (C)(a&&b)||(!a&&!b) (D)(a||b)&&(!a||!b)3.对于表达式(x>0)?x=x-1:x=x+1,若当前x取值为-2,该表达式的运算结果为( A )(A) -1 (B) 0 (C) 1 (D) 24.不是C语言基本数据类型的是( D )(A) 指针类型 (B) 整型 (C) 字符型 (D) 实型5.以下for循环控制中,循环次数为10次的是( C )(A)for(int i=1;i<10;i++) (B)for(int i=0;i<=10;i++)(C)for(int i=0;i<20;i+2) (D)for(int i=0;i<=20;i+2)6.设有:int a=3, b= 4, c= 5,x , y; 表达式0 && (x=a)&&(y=b)的值为( B )(A) 1 (B) 0 (C) 3 (D) 47.设有语句 int a=3 ; 则执行了语句 a+=6;后,变量a 的值为( C )(A) 18 (B) -3 (C) 9 (D) 128.对于变量定义char* p_name[]={“Kate”,“John”,“Mike”},如下哪一种表达式能表示“Mike”中的‘k’字符?( B )(A)p_name[0][2] (B)p_name[2][2](C)*(p_name[2]+3) (D)*(p_name[1]+2)9.表达式(int)7.5/(float)2的取值为( A )(A)3.75 (B)3.5 (C)3 (D)410.有定义语句:float a[4];则分配给数组a的内存空间为( C )字节(A) 20 (B) 12 (C) 16 (D) 1011.表达式6>8 | | 3>=9的取值为( A )(A)0 (B)1 (C)2 (D)312. 表达式18/4*sqrt(4.0)/8值的数据类型为(C )(A) int(B)float(C)double(D)不确定13.表达式18/4*sqrt(4.0)/8值的数据类型为( D )(A)int B float C.double D.不确定14.在以下定义中对标识符ptr描述正确的是( C )int(*ptr)[3];(A)定义不合法 (B)是一个指针数组名,每个元索是一个指向整型变量的指针(C)是一个指针,它指向一个具有3个元素的一维数组(D)是一个指向整型变量的指针15.已知有语句 scanf (“%d%d”,&a,&b);要使整型变量 a = 6, b = 8,运行时,屏幕上应输入( D )(A)a=6,b=8 (B)a=6 b=8 (C)6 8 (D)6 , 816.若char a=3,b=6,c; c=a^(b>>2);则c的二进制形式为(A )(A) 00000010 (b)00000100 (C)00000001 (D)0000001117.若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是( D )(A)p=q (B)*p=*q (C)n=*q (D)p=n18.已知int a[3][4];则对数组元素引用正确的是( C )(A) a[2][4] (B) a[1,3] (C) a[2][0] (D) a(2)(1)19.已知定义int a[]={10, 60, 30};写出语句a[0]+ = a[1] - = a[2];运行后数组各元素的值为( B )(A)a[0] =70 , a[1] = 30,a[2] = 30。
大一c语言上机考试题及答案
大一c语言上机考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个选项是正确的整型常量表示?A. 0x1AB. 1.2E3C. 0b1010D. 0'123答案:A2. 若有定义 int a=5;,则表达式 a+=a-=a*=a 执行后,变量a的值是多少?A. 0B. 25C. -5D. 125答案:C3. 下列哪个函数不能正确计算字符串长度?A. strlen()B. sizeof()C. strnlen()D. wcslen()答案:B4. C语言中,以下哪个选项是合法的数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int b[] = {1, 2, 3, 4, 5};C. int c[5] = {1, 2, 3};D. int d[5] = {1, 2, 3, 4, 5, 6};答案:B5. 下列哪个选项不是C语言中的运算符?A. +=B. ||C. &&D.答案:D6. C语言中,以下哪个选项是正确的函数声明?A. int add(int a, int b);B. void add(int a, int b);C. int add(int, int);D. void add(int a, b);答案:C7. 若有定义 int x=10;,则以下哪个表达式的结果为非零值?A. x % 2B. x / 2C. x + 2D. x - 10答案:A8. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. fprint()D. fscan()答案:A9. 下列哪个选项不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D10. C语言中,以下哪个选项是正确的结构体声明?A. struct Student {int id;char name[20];};B. struct Student student;C. struct {int id;char name[20];};D. A和C答案:D二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字可以定义一个函数。
C语言上机题参考答案
#include<stdio.h>
void main()
{int i,j,k,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{for(j=1;j<=n-i;j++)
printf(" ");
for(k=1;k<=i;k++)
printf("*");
printf("\n");
for(j=0;j<n-1;j++)
if(a[j]>a[j+1])
t=a[j],a[j]=a[j+1],a[j+1]=t;
for(i=0;i<n;i++)
{ s=0;
for(j=1;j<a[i];j++)
if(a[i]%j==0) s+=j;
if(s==a[i]) printf("%d ",a[i]);
}
2、定义三个整型变量,从键盘输入三个整数,计算平均值,计算结果输出到屏幕上,平均值保留2位小数。
示例:
输入:按如下格式输入3个数:
21 22 25
输出:(注意保留2位小数)
22.67
#include<stdio.h>
void main()
{int a,b,c;
scanf("%d%d%d",&a,&b,&c);
printf("%.2f\n",(a+b+c)/3.0);
大学C语言期末上机考试题库【精品】
上机考试练习题1、程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入 x,计算并输出下列分段函数 f(x) 的值(保留1位小数)。
当 x 不等于0时,y = f(x) = 1/x,当 x 等于0时,y = f(x) = 0。
输入输出示例:括号内是说明输入2 (repeat=2)10 (x=10)0 (x=0)输出f(10.00) = 0.1f(0.00) = 0.0#include <stdio.h>\{int repeat, ri;double x, y;scanf("%d", &repeat);for(ri = 1; ri <= repeat; ri++){scanf("%lf", &x);/*---------*/if(x!=0) y=1/x;else y=0;printf("f(%.2f) = %.1f\n", x, y);}}20022程序填空,不要改变与输入输出有关的语句。
输入华氏温度,输出对应的摄氏温度。
计算公式:c = 5*(f-32)/9,式中:c表示摄氏温度,f表示华氏温度。
输入输出示例:括号内为说明输入150 (fahr=150)输出celsius = 65#include <stdio.h>int main(void)int celsius, fahr;/*---------*/scanf(“%d”,&fahr);celsius=5.0*(fahr-32)/9;printf("celsius = %d\n", celsius);}20023程序填空,不要改变与输入输出有关的语句。
输入存款金额 money、存期 year 和年利率 rate,根据下列公式计算存款到期时的利息 interest(税前),输出时保留2位小数。
c语言上机考试题及答案
c语言上机考试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个是合法的整型常量?A. 0x12B. 0x12.0C. 0x12LD. 0x12.0L答案:A2. 下列哪个选项是正确的C语言标识符?A. 2variableB. variable2C. variable-2D. variable_2答案:D3. C语言中,以下哪个是正确的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World'D. 'Hello, World'答案:A4. 在C语言中,以下哪个是正确的函数声明?A. int myFunction(int a);B. int myFunction();C. int myFunction(int);D. int myFunction(int a, int b);答案:A5. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. !D. 以上都是答案:D二、填空题(每题3分,共15分)1. 在C语言中,用于定义整型变量的关键字是________。
答案:int2. 若有定义 int a = 10;,则表达式 a++ 的值为________。
答案:103. C语言中,用于表示逻辑“与”的运算符是________。
答案:&&4. 在C语言中,以下代码段的输出结果是________。
```c#include <stdio.h>int main() {int x = 5;printf("%d", x++);return 0;}```答案:55. 若有定义 float b = 3.14;,则表达式 b * 100 的值为________。
答案:314.0三、编程题(每题20分,共40分)1. 编写一个C程序,计算并输出以下数列的前10项之和:1 + 1/2 + 1/3 + ... + 1/10。
C语言程序设计(专科)-D卷
四川大学网络教育学院课程考试试题( D 卷)20 11 年11 月课程名称:C语言程序设计适用层次:专科适用专业:计算机应用技术闭卷一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题后的括号内。
每小题3分,共45分)1.下列哪个是正确的字符数组定义?A. char s (100);B. char s[ ]=”abcd”;C. char s[10, 20];D. char s[ ];2. 下列哪个是C语言的非法标识符?A. F123B. A_countC. No&1D. _No13. 设有定义int x; float y;则表达式10.5+x/y的数据类型是。
A. 不确定B. doubleC. intD. float4.若a为0, b不为0,则以下表达式为真的是。
A. (a||b)&& (!b)B. a&&b||(!b)C. a&&(!b)||bD. (!a||b)&&a5.十进制数 267表示成十六进制是。
A. 0X010BB. 0X0111C. 0X0113D. 0X01036.程序段 int x=5,y=10; x=x|y;执行后x的值是。
A. 10B. 15C. 5D. 07.程序段int a=1,b=3,c=2,d=4,k; k=a>b?a:c>d?c:d执行后k的值为。
A. 1B. 2C. 3D. 48.若变量已正确定义并赋值,以下符合C语言语法的表达式是。
A. a:=b+1B. a=b=c+2C. int 18.5%3D. a=a+7=c+b9.说明语句char *s = “2011\02\12”; 以下说法正确的是。
A. 字符串有4个字符B. 字符串在内存中占据6个字节C. 字符串有10个字符D. 字符串在内存中占据11个字节10.为了判断两个字符串s1与s2是否相等,应当使用。
c语言上机考试题库
c语言上机考试题库1. 编写一个程序,从键盘输入两个整数,然后交换它们的值并输出。
```c#include <stdio.h>int main(){int num1, num2, temp;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);temp = num1;num1 = num2;num2 = temp;printf("交换后的值为:%d %d\n", num1, num2);return 0;}```2. 编写一个程序,输入一个整数,判断该数是奇数还是偶数,并输出对应结果。
```cint main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d是偶数\n", num);}else{printf("%d是奇数\n", num);}return 0;}```3. 编写一个程序,输入一个大写字母,将其转换为小写字母并输出。
```cint main(){char upperCase, lowerCase;printf("请输入一个大写字母:");scanf("%c", &upperCase);lowerCase = upperCase + 32;printf("转换为小写字母:%c\n", lowerCase);return 0;}```4. 编写一个程序,输入一个字符串,然后判断该字符串是否为回文,并输出对应结果。
```c#include <stdio.h>#include <string.h>int main(){char str[100];int i, j, flag = 1;printf("请输入一个字符串:");gets(str);for(i = 0, j = strlen(str) - 1; i < j; i++, j--) {if(str[i] != str[j]){flag = 0;break;}}if(flag == 1){printf("该字符串是回文\n");}else{printf("该字符串不是回文\n");}return 0;}```5. 编写一个程序,输入一个整数n,计算并输出1到n的累加和。
四川大学c语言考试题及答案
四川大学c语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的描述,不正确的是:A. 变量名必须以字母开头B. 变量名可以包含下划线C. 变量名区分大小写D. 变量名不能以数字开头答案:D2. 在C语言中,用于定义一个字符型变量的关键字是:A. charB. intC. floatD. double答案:A3. 下列哪个选项不是C语言中的运算符?A. %B. &&C. =D. :答案:D4. 在C语言中,用来表示逻辑“与”的运算符是:A. &&B. ||C. !D. ^答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. case答案:D6. 在C语言中,用于定义一个整型数组的语法是:A. int array[10];B. int array[];C. int [10] array;D. int array;答案:A7. 下列哪个函数用于将浮点数转换为字符串?A. sprintfB. printfC. scanfD. strcat答案:A8. 在C语言中,用于定义一个函数的关键字是:A. functionB. defineC. defD. void答案:D9. 下列哪个选项不是C语言中的预处理指令?A. #includeB. #defineC. #ifD. switch答案:D10. 在C语言中,用于表示“或”逻辑运算的运算符是:A. ||B. &&C. ==D. !=答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是____。
答案:int2. 在C语言中,______运算符用于比较两个值是否相等。
答案:==3. C语言中,用于定义一个字符串的语法是____。
答案:char str[] = "Hello";4. 在C语言中,____运算符用于计算两个数的和。
川大《C语言程序设计0008》21秋在线作业2
川大《C语言程序设计0008》21秋在线作业2试卷总分:100 得分:100一、单选题(共30 道试题,共75 分)1.下列不属于算法的特征的是()。
A.确定性B.有穷形C.二义性D.可行性答案:C2.下列说法正确的是()。
A.算法+数据结构=程序B.算法可以无限循环C.算法只能用C语言实现D.算法只能用Java语言实现答案:A3.下列不属于算法的是()。
A.成绩换算B.打印字符串C.求最小公倍数D.求最大公约数答案:B4.下列关于求1*2*…*5说法错误的是()。
A.可以设计一个算法求解B.可以使用wile循环C.可以使用for循环D.用循环解决效率不高答案:D5.算法一般不可以用什么表示()。
A.伪代码B.流程图C.文件D.自然语言答案:B6.下列关于伪代码说法错误的是()。
A.伪代码可用于描述算法B.伪代码可以用C语言实现C.伪代码应简单易懂D.伪代码比较方便描述算法答案:B7.下列关于伪代码的功能是()。
begin (算法开始) 1=>p 2=>I while i ≤5 { p*i=>p i+1=>I } print p end (算法结束)A.求5!B.求6!C.求1-5之和D.求1-6之和答案:A8.下列不属于C常量的是()。
A.字符常量B.整型常量C.列表常量D.字符串常量答案:C9.下列关于变量说法错误的是()。
A.变量用来存放数据,也就是存放变量的值。
B.在程序运行期间,变量的值是可以改变的。
C.变量是一个存储单元D.变量可以直接使用。
答案:D10.下列不属于C数据类型的是()。
A.整型类型B.浮点类型C.数组类型D.链表类型答案:D11.计算机语言不包括()。
A.机器语言B.汇编语言C.智能语言D.高级语言答案:C12.C语言属于()。
A.机器语言B.汇编语言C.智能语言D.高级语言答案:D13.printf语句的作用是()。
A.写入文件B.读入数据C.记录数据D.黑屏终端打印信息答案:D14.下列关于C语言程序说法错误的是()。
四川大学网络教育学院 程序设计语言(1) 模拟试题1
《程序设计基础(1)》模拟试题一一、选择题(每小题3分,共45分)1.C语言程序的执行,总是起始于()A) 程序中的第一条可执行语句B) 程序中的第一个函数C) main函数 D) 包含文件中的第一个函数2.C语言语句一行写不下时,可以()A) 用逗号换行 B) 在任意一空格处换行 C) 用回车换行 D) 用分号换行3.下面能正确表示八进制数的是()A) 025 B) 029 C) -114 D) 0x334.十进制数2403转换成十六进制数为( )。
A) 963 B) 369 C) 953 D) 3595.在C语言中,引用数组元素时,其数组下标的数据类型允许是()A)整型常量 B)整型表达式 C)整型常量或整型表达式 D)任何类型的表达式6.对表达式for(表达式1; ;表达式3)可理解为()A)for(表达式1;0;表达式3) B)for(表达式1;1;表达式3)C)for(表达式1;表达式1;表达式3) D)for(表达式1;表达式3;表达式3)7.程序段int a=1,b=2,c=3,d=4,k; k=a>b?a:c>d?c:d执行后k的值为()。
A)1 B)2 C)3 D)48.多重if_else语句嵌套使用时,寻找与else配套的if方法是( )。
A) 缩排位置相同的if B) 其上最近的if C) 下面最近的if D) 同行上的if 9.下列字符串不符合标识符规定的是( )。
A) SUM B) sum C) 3cd D) end10.下列运算符中,要求运算对象必须是整数的是()A) / B) * C) % D) !11.调用gets和puts函数时,必须包含的头文件是()A)stdio.h B)stdlib.h C)define D)以上都不对12.已知int a=6; 则执行a+=a-=a*a;语句后,a的值为( )A)36 B)0 C)-24 D)-6013.C语言中,字符型数据在内存中存储形式是()A) 原码 B) 反码 C) 补码 D) ASCII码14.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参15.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是()A)a>=10 or a<=0 B)a>=0|a<=10 C)a>=10 &&a<=0 D)a>=10‖a<=0二、填空题(每空1.5分,共15分)1.当调用函数时,实参是一个数组名,则向函数传递的是。
四川大学《C语言程序设计0008》20春在线作业2.doc
1.设有说明:char a; int b; float c; 则表达式a+b-c值的数据类型为( )。
A.charB.intC.floatD.double【参考答案】: C2.若有定义: int a=8, b=5, c; 执行语句c=a/b+0.4; 后, c的值为( )。
A.1.4B.1C.2.0D.2【参考答案】: B3.若有以下定义,则能使值为3的表达式是( )。
int k=7, x=12;A.x%=(k%=5)B.x%=(k– k%5)C.x%=k – k%5D.(x%=k) –(k%=5)【参考答案】: D4.以下选项中合法的实型常数是()。
A.5E2.0B.E-3C.2E0D.1.3E【参考答案】: C5.正确的定义变量是()。
A.int a=10,b,c=2;B.const int a;C.int a=b=c=10;D.inta;b;c【参考答案】: A6.C语言中while和do while循环的区别是( )。
A.do while循环至少执行一次B.while的循环条件要求得比do while循环严格C.do while循环允许从外部转到循环体内D.do while循环的循环体部分不能是复合语句【参考答案】: A7.以下程序段的输出结果是()。
int a=1234; printf(“%2dn”, a);A.12B.34C.1234D.提示出错,无结果【参考答案】: C8.下列运算符中优先级最低的是( )。
A.?:B.&&C.D.!=【参考答案】: D9.设a为整型变量,下列表达式中不正确的是()。
A.a=a1B.aC.(a)1D.a(1)【参考答案】: D10.设有以下定义: int a=0; double b=1.25; char c=’a’; #defined 2 则下面语句中错误的是()。
A.a;B.b;C.c;D.d;【参考答案】: D11.已知int x=23;则printf(x++*1/3)的输出结果是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.有以下程序#include <stdio.h>void main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出的结果是___D___。
A.2B.编译时有错,无结果C.4D.32.设x为int型变量,则执行以下语句后,x的值为:int x = 10;x*=x/=-x;printf("%d\n", --x); --D---A.10B.1C.-10D.03.下面程序的输出是_C___。
main(){ int x,i;for(i=1;i<=100;i++){ x=i;if(++x%2==0)if(++x%3==0)if(++x%7==0)printf("%d ",x);}}A.39 81B.42 84C.28 70D.26 684.在C语言中,合法的字符常量是---B----A."a"B.'\t'C.97D.a5.已知int x=12,y=3;执行下述程序后,变量x的值是_D___。
do{ x/=y--;}while(x>y);printf("%d\n",x);}A.2B.1C.3D.程序运行有错误6.有以下程序#include <stdio.h>void main(){ int m=3,n=4,x;x=-m++;x=x+8/++n;printf("%d\n",x);}程序运行后的输出结果是__C____。
A.3B.5C.-2D.-17.若a、b、c1、c2、x、y均是整型变量,正确的switch语句是______。
①switch(a+b);{ case 1:y=a+b;break;case 0:y=a-b;break;}②switch(a*a+b*b){ case 3:case 1:y=a+b;break;case 3:y=b-a;break;}③switch a{ case c1:y=a-b;break;case c2:x=a*b;break;default:x=a+b;}④switch (a-b){ default:y=a*b;break;case 3:case 4:x=a+b;break;case 10:case 11:y=a-b;break;}----A-----A.④B.③C.①D.②8.有以下程序#include <stdio.h>void main(){ int y=10;while (y--); printf("y=%d\n", y);}程序执行后的输出结果是---A---A.y=-1B.while构成无限循环C.y=0D.y=19.有以下程序#include <stdio.h>void main(){ int n=0,m=1,x=2;if(!n) x-=1;if(m) x-=2;if(x) x-=3;printf("%d\n",x);}执行后输出结果是_-4____10.有如下程序#include <stdio.h>void main(){int x=23;do{printf("%d",x--);}while(!x);}则输出结果为(23 )11.以下程序运行后的输出结果是1 2 3_____。
#include <stdio.h>void main(){ int i, m=0, n=0, k=0;for(i=9; i<=11; i++)switch(i/10){ case 0: m++; n++; break;case 10: n++; break;default: k++; n++;}printf("%d %d %d \n", m, n, k);}12. 以下程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。
#include <stdio.h>void main (){int i, j;for(i=0;i<10; i++){j=i*10+6;if( _j%3!=0___ ) continue;printf("%d ",j);}}1.把C语言的源程序变为目标程序要经过( C )A.编辑B.连接C.编译D.运行2.C语言中用于结构化程序设计的三种基本结构是___C___。
A.for、while、do-whileB.if、switch、breakC.顺序结构、选择结构、循环结构\D.if、for、continue3.以下叙述中正确的是__B____。
A.花括号“{”和“}”只能作为函数体的定界符B.C程序中注释部分可以出现在程序中任意合适的地方C.构成C程序的基本单位是函数,所有函数名都可以由用户命名D.分号是C语句之间的分隔符,不是语句的一部分本题的考查点是C程序设计的初步知识。
选项A,C程序中/*……*/表示注释部分,注释只是给人看的,对编译和运行不起作用,可以加在程序中任何位置,所以选项A是对的;选项B,函数体是函数的主体,从左花括号开始,到与之匹配的右花括号结束。
花括号还可以作为复合语句的定界符。
选项C,一个C程序中必须有且只能有一个由“main”命名的主函数,其他函数由用户自行命名。
选项D,C语句是组成C程序的基本单位,具有独立的程序功能。
所有的C语句都以分号结尾。
故本题答案为A。
4.有以下程序段int k=0;while(k=1)k++;while循环执行的次数是__D____。
A.执行1次B.有语法错,不能执行C.一次也不执行D.无限次乍一看,还以为程序要表达的意思是当k等于1的时候做k++,但是C语言里关系表达式的等于应该是"=="。
一个等于号表示赋值,即这里面重复的把1赋给k,自然表达式k=1的值总为1,while后面的表达式恒为真,当然会进入死循环。
本题答案为A。
5.设有说明语句: char a = '\72'; 则变量a ___C___。
A.说明不合法B.包含3个字符C.包含1个字符D.包含2个字符本题考查点是转义字符的应用。
转义字符常量'\xx'可以把'\'后面的数字转换为对应的ASCII字符,'\72'表示的是ASCII码等于72的那个字符,即为"H",所以在字符变量中存储的只是"H"这一个字符。
故本题答案为A。
6.下面程序#include <stdio.h>void main(){int x=10,y=3;printf("%d\n",y=x/y);}的输出是__C____。
A.不确定的值B.1C.3D.0本题的考查点是除法运算。
x/y的结果约为3.33333,但x和Y定义为int,由于打印要求为整型,所以自动转换为整型(相当于截取整数位),打印结果为3。
故本题答案为C。
7.设a和b均为double型常量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是___B___。
A.5.500000B.6.000000C.6D.6.500000本题的考查点是各类数值型数据的混合运算。
各类数值型数据在进行混合运算时,不同类型的数据要先转换成同一类型,然后进行运算。
转换的规则为:字符数据必定先转换为整数,short型转为int型,float型数据在运算时一律先转换成双精度型,以提高运算精度。
故本题答案为D。
8.有如下程序#include <stdio.h>void main(){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是__D____。
A.a=2,b=2B.a=1,b=1C.a=1,b=0D.a=2,b=1在这个switch语句中,因为x的值为1,所以执行case 1:后面的a++,这样a = 1。
但又由于其下没有break语句,所以其后面的语句(a++;b++)也将被执行,这样一来,a = 2,b = 1。
本题答案为A。
9.设有定义:int a; float b; 执行scanf("%2d%f",&a,&b); 语句时,若从键盘输入876 543.0<回车>,a和b的值分别是----D----A.876和543.000000B.76和543.000000C.87和543.000000D.87和6.00000010.有以下程序#include <stdio.h>void main(){ int s=0,a=1,n;scanf("%d",&n);do{s+=1; a=a-2;}while(a!=n);printf("%d\n",s);}若要使程序的输出值为2,则应该从键盘给n输入的值是__B____。
A.-5B.-3C.-1D.0本题的考查点是do-while语句此语句的一般形式为:do 语句while (表达式)其特点为:先执行语句,后判断表达式。
它是这样执行的:先执行一次指定的内嵌的语句,然后判别表达式,当表达式的值为非零(“真”)时,返回重新执行该语句,如此反复,直到表达式的值等于0为止,此时循环结束。
当n=-1时,s+=1,s=1; a=a-2=-1;a!=n不成立,结束循环,此时s值为1,不符合题意;当n=-3时,s+=1,s=1; a=a-2=-1;a!=n成立,继续循环,s=s+1=2,a=a-2=-3;a!=n不成立,此时s值为2,符合题意;故本题答案为B。
11.以下选项中非法的表达式是__D____。
A.i=j==0B.0<=x<100C.(char)(65+3)D.x+1=x+1计算或运算主要是通过表达式实现的。
不同的表达式进行不同的运算,达到不同的目的。
选项A中,0<=x<100在C语言中是一个合法的关系表达式,但它并不代表数学式0<=x<100。
在计算0<=x<100时,根据从左到右的结合性,先计算0<=x,其结果只能是0或1,然后再比较0<100或1<100。