c3顺序结构
- 格式:pps
- 大小:932.00 KB
- 文档页数:22
C语言专升本考试(习题卷5)第1部分:单项选择题,共70题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]表达式a>>3|b的计算顺序是( )。
(2分)A)1. 先执行左移,后执行或运算B)1. 先执行或运算,再执行左移C)1. 先执行或运算,再执行右移D)1. 先执行右移,再执行或运算答案:D解析:2.[单选题]对于基类型相同的两个指针变量之间,不能进行的运算是( )。
(2分)A)<B)"=C)+D)-答案:C解析:3.[单选题]以下正确的程序段是( )。
(2分)A)1. char str[20]; scanf("%s",&str);B)1. char *p; scanf("%s",p);C)1. char str[20]; scanf("%s",&str[2]);D)1. char str[20],*p=str; scanf("%s",p[2]);答案:C解析:4.[单选题]若变量已正确说明为int类型,要给a,b,c输入数据,以下正确的输入语句是( )。
(2分)A)1. read a,b,c;B)1. getchar(a,b,c);C)1. scanf("%d%d%d",&a,&b,&c);D)1. scanf("%d%d%d",a,b,c);答案:C解析:5.[单选题]Char *s1="hello",*s2;s2=s1;则()。
A)s2指向不确定的内存单元B)不能访问"hello"C)puts(s1);与puts(s2);结果相同D)s1不能再指向其它单元答案:C解析:6.[单选题]若有int *p=(int *)malloc(sizeof(int));则向内存申请到内存C)scanf("%d",*p);D)scanf("%d",**p);答案:A解析:7.[单选题]以下选项中,与k=n++完全等价的表达式是()。
顺序结构程序设计习题一、选择题:(以下各题□代表空格。
)1.以下程序运行的结果是:#include <stdio.h>int main(){int m=5,n=10;printf(“%d,%d\n”,m++,--n);}A)5,9 B)6,9 C)5,10 D)6,102.以下程序运行的结果是:#include <stdio.h>int main(){int a=201,b=012;printf(“%2d,%2d\n”,a,b);return 0}A)01,12 B)201,10 C)01,10 D)20,013.有定义语句int a,b;若要通过语句scanf(“%d,%d,”&a,&b);使变量a得到数值6,变量b得到数值5,下面输入形式,错误的是:A)6,5<回车> B)6,□□<回车>C)6 5<回车> D)6,<回车>5<回车>4.设有如下程序:#include <stdio.h>int main(){char ch1=’A’,ch2=’a’;printf”%c\n”,(ch1,ch2));return 0;}则以下叙述正确的是:A)程序的输出结果为大写字母A;B)程序的输出结果为小写字母a;C)运行时产生错误信息;D)格式说明符的个数少于输出项个数,编译出错。
5.以下程序运行的结果是:#include <stdio.h>int main(){int x1=0xabc,x2=oxdef;x2-=x1;printf(“%X\n”,x2);return 0;}A)ABC B)0XABC C)0X333 D)3336.以下程序输出的结果是:#include <stdio.h>int main(){ printf(“\n*s1=%15s*”,”chinabeijing”);printf(“\n*s2=%-5s*”,”chi”);}A)*s1=chinabeijing□□□*S2=**chi*B)*s1=chinabeijing□□□**s2=chi□□*C)*s1=*□□chinabeijing**s2=□□chi*D)*s1=□□□chinabeijing**s2=chi□□*7.已有定义int a=-2;和输出语句:printf(“%8lx”,a);以下正确的描述是:A)整形变量的输出格式符只有%d一种;B)%x是格式符的一种,它可以适应与任何一种类型的数据;C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度。
关于公文常用序号的几点说明(数字序号顺序)一。
序号序号Sequence Number,有顺序的号码,如数字序号:1、2、3……,大写汉字也算数字序号,如:一、二、三……序号可以清晰的分清同一类事物,也可以用序号作文章的小标题。
我们在写文章,特别是在写论文中经常会用一些数字序号,正确地运用序号,能使我们的文章层次清楚,逻辑分明,便于读者阅读和引述;目前较多论文在序号的写法上存在着不少的误区,如:层次大小不分、中文数字与阿拉伯数字混用、前后序号形式不统一,等等。
用得不好,让人看着别扭,甚至会影响文章的质量,可见序号也是文章的一个重要组成部分,它的规范与否同样很重要。
在评选论文时,常常会为一些文章感到惋惜,内容、文字很精彩,可数字序号的运用不规范或者混乱,让人看着不舒服。
正文层次标题序号要注意大小分级,为此,我根据自己的使用习惯,并参考一些资料,在此谈谈有关数字序号的用法,对序号规范写法作一详细说明:二、序号的结构层次顺序(一)数字序号的级别顺序为:第一层为汉字数字加顿号,例如:“一、"“二、”“三、”;第二层为括号中包含汉字数字,例如:“(一)"“(二)”“(三)”;第三层为阿拉伯数字加下脚点,例如:“1。
”“2。
"“3。
”;第四层为括号中包含阿拉伯数字,例如:“(1)”“(2)"“(3)”;第五层为带圈的阿拉伯数字,例如:“①”“②”“③”或者“1)”“2)”“3)";第六层为大写英文字母,例如:“A.”“B。
"“C。
”或者“(A)”“(B)"“(C)”;第七层为小写英文字母,例如: “a."“b。
”“c。
”或者“(a)”“(b)”“(c)”;……数字序号级别一览表:(理科类论文的各层次标题还可用阿拉伯数字连续编码,不同层次的2个数字之间用下圆点(。
)分隔开,末位数字后面不加点号.如“1”,“1.2”,“1.2。
1”等;各层次的标题序号均左顶格排写,最后一个序号之后空一个字距接排标题。
c语言顺序结构实验报告篇一:实验三顺序结构程序设计实验报告实验三顺序结构程序设计实验报告一、实验目的1. 掌握掌握赋值语句的使用方法。
2. 各种类型数据的输入输出的方法,能正确使用各种格式转换符。
3. 进一步掌握编写程序和调试程序的方法。
二、实验内容(源代码)1. sy3-(1) ①#includeint main() { int a,b;//基本整型float d,e; //单精度浮点型 char c1,c2;//字符型 double f,g;//双精度浮点型long m,n; //长整型unsigned int p,q;//"unsiguld"改成"unsigned" 无符号整型a=61,b=62; c1='a';c2='b';//'a''b'的"'"不能掉了d=3.56;e=-6.87; //d,e之间用";"隔开f=3157.890121;g=0.9; m=50000;n=-60000; p=32768;q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n", a,b,c1,c2,d,e);//"""与"a"之间的","不能掉了,"\"不能写成"/" printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\ n",f,g,m,n,p,q); //f后的q改为g}③#includeint main() {int a,b;//基本整型 float d,e; //单精度浮点型char c1,c2;//字符型double f,g;//双精度浮点型 long m,n; //长整型unsigned int p,q;//"unsiguld"改成"unsigned" 无符号整型 a=61,b=62;c1=a;c2=b; //c1,c2之间用";"隔开 f=3157.890121;g=0.9; d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n", a,b,c1,c2,d,e);//"""与"a"之间的","不能掉了,"\"不能写成"/"printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\ n",f,g,m,n,p,q); //f后的q改为g④#includeint main() {int a,b;//基本整型 float d,e; //单精度浮点型char c1,c2;//字符型double f,g;//双精度浮点型 long m,n; //长整型unsigned int p,q;//"unsiguld"改成"unsigned" 无符号整型 a=61,b=62;c1=a;c2=b; //c1,c2之间用";"隔开f=3157.890121;g=0.9; d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%d,c2=%d\nd=%d,e=%d\n",sizeof (a),sizeof(b),sizeof(c1),sizeof(c2),sizeof(d),sizeo f(e));printf("f=%d,g=%d\nm=%d,n=%d\np=%d,q=%d\n",sizeof(f ),sizeof(g),sizeof(m),sizeof(n),sizeof(p),sizeof(q) );}2. sy3-(2)#include int main() {float h,r,c,s1,s2,v1,v2; //定义float pi=3.1415926; //赋值printf("圆半径r=,圆柱高h=:");//提示scanf("%f,%f",&r,&h); //输入c=2*pi*r; //计算s1=pi*r*r;//"*"不可省略s2=4*s1;v1=4.0/3.0*s1*r; v2=s1*h;printf("圆周长:c=%6.2f\n",c); //输出 printf("圆面积:s1=%6.2f\n",s1);printf("圆球表面积:s2=%6.2f\n",s2); printf("圆球体积:v1=%6.2f\n",v1); printf("圆柱体积:v2=%6.2f\n",v2); return 0;}3. sy3-(3)#include#include //不要忘了数学函数 int main() {float p,r5,r3,r2,r1,r0,p1,p2,p3,p4,p5; //定义p=1000;//赋值printf("r5=,r3=,r2=,r1=,r0=:");//提示 scanf("%f,%f,%f,%f,%f",&r5,&r3,&r2,&r1,&r0); //输入 p1=p*r5*5; //计算}p2=p*(1+2*r2)*(1+3*r3)-p; p3=p*(1+3*r3)*(1+2*r2)-p; p4=p*pow(1+r1,5)-p; p5=p*pow(1+r0/4,20)-p;printf("方案1的利息:p1=%f\n",p1); //输出printf("方案2的利息:p2=%f\n",p2); printf("方案3的利息:p3=%f\n",p3); printf("方案4的利息:p4=%f\n",p4); printf("方案5的利息:p5=%f\n",p5); return 0;4. sy3-(4)① #include int main() {char c1='C',c2='h',c3='i',c4='n',c5='a';//定义与赋值 c1=c1+4;//计算 c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略 printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2); putchar(c3); putchar(c4); putchar(c5);printf("\n");//换行不要省略 return 0;}② #include int main(){ }char c1='T',c2='o',c3='d',c4='a',c5='y';//定义与赋值 c1=c1-22;//计算 c2=c2-22; c3=c3-22; c4=c4-22; c5=c5-22;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略 printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2); putchar(c3); putchar(c4); putchar(c5);printf("\n");//换行不要省略 return 0;③ #include int main(){char c1='T',c2='o',c3='d',c4='a',c5='y';//定义与赋值 c1=c1-4;//计算 c2=c2-4; c3=c3-4; c4=c4-4; c5=c5-4;printf("用printf语句输出结果为:");//提示printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);//输出c1,c2之间的","不可省略 printf("用putchar语句输出结果为:");//提示putchar(c1);//输出putchar(c2); putchar(c3); putchar(c4); putchar(c5);printf("\n");//换行不要省略 return 0;}篇二:C语言实验二程序、总结顺序结构与输入、输出方法实验二顺序结构与输入/输出方法1 学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自增减运算符的使用。
第三章顺序结构程序设计3.1 基本语句(1)空语句:即只有一个分号的语句。
;(2)表达式语句:表达式后加一个分号。
如:m=0;x+y-10%2+2*x,10/2;无具体意义(3)函数调用语句:函数调用加一个分号。
如:printf(“this is a example.\n”);(4)控制语句:是C语言中完成一定控制功能的语句,有如表3.1所示。
表3.1条件控制语句循环控制语句辅助控制语句if语句switch语句while语句do-while语句for语句break中断语句continue继续语句goto转向语句return返回语句(5)复合语句。
将一组语句用花括号{}括起来就形成了复合语句,又称其为分程序。
如:{m=10;printf(“m=%d\n”,m);}3.2 赋值语句赋值表达式后加上一个分号。
例:利用赋值语句交换两变量的值。
设有定义:int a=12,b=5,t;则可以用如下两种方式交换变量a和b的值:⑴t=a;a=b;b=t;⑵a=a+b; b=a-b; a=a-b;3.3 数据的输入输出C语言无I/O语句,I/O操作由函数实现#include <stdio.h>一、格式输出函数•格式:printf(“格式控制串”,输出表)•功能:按指定格式向显示器输出数据•返值:正常,返回输出字节数;printf(“格式控制串”,输出表)•输出表:要输出的数据(可以没有,多个时以“,”分隔)•格式控制串:包含两种信息✓格式说明:%[修饰符]格式字符,用于指定输出格式✓普通字符或转义序列:原样输出d,i x,X o u c s e,E f g %%格式字符:十六进制无符号整数不带符号十进制整数十进制整数指数形式浮点小数单一字符字符串八进制无符号整数小数形式浮点小数e 和f 中较短一种百分号本身int a=567;printf ( “%d”,a );int a=255;printf(“%x”,a);int a=65;printf(“%o”,a);int a=567;printf(“%u”,a );char a=65;printf(“%c”,a);printf(“%s”,“ABC”);float a=567.789;printf(“%e”,a);float a=567.789;printf(“%f”,a);float a=567.789;printf(“%g”,a);printf(“%%”);567ff 101567A ABC 5.677890e+02567.789000567.789%说明格式字符要用小写格式字符与输出项个数应相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式例main(){ unsigned int u=65535;printf(”u=%d \n",u);}输出结果:u=-1int a=3,b=4;printf(“%d %d\n ”,a,b); printf(“a=%d , b=%d\n ”,a,b);例int a=3,b=4;printf(“%d %d \n”,a,b); printf(“a=%d , b=%d \n”,a,b);输出结果: 3 4a=3, b=411 11 11 11 11 11 11 1165535附加格式说明符(修饰符).n 对实数,指定小数点后位数(四舍五入)对字符串,指定实际输出位数修饰符功能m输出数据域宽,数据长度<m,左补空格;否则按实际输出输出数据在域内左对齐(缺省右对齐)-指定在有符号数的正数前显示正号(+)+输出数值时指定左面不使用的空位置自动填0在八进制和十六进制数前显示前导0,0x#在d,o,x,u前,指定输出精度为long型在e,f,g前,指定输出精度为double型l例int a=1234;float f=123.456;static char c[]=“Hello,world!”;printf(“a=%8d,%-8d;\n”,a,a);printf(“f=%10.2f,%-10.1f;\n”,f,f);printf(“c=%10.5s,%-10.3s;\n”,c,c);运行结果:例-例int a=1234;float f=123.456;printf (“%08d \n”,a );printf (“%010.2f \n”,f ); printf (“%0+8d \n”,a );printf (“0+10.2f \n”,f ); 例0 、+例int a=123;printf(“%o,%#o,%X,%#X \n”,a,a,a,a);例#例long a=65536;printf(“%d,%8ld \n”,a, a);例l 00 00 00 00 00 00 00 0100 00 00 00 00 00 00 00//00001234//0000123.46//000+1234//000+123.56//173,0173,7B,0X7B//0, •65536例int a=1234;float f=123.456;char ch=…a‟;printf(“%8d,%2d \n”,a,a);printf(“%f,%8f,%8.1f,%.2f,%.2e \n”,f,f,f,f,f);printf(“%3c \n”,ch);运行•1234,1234结果:123.456000,123.456000, •123.5,123.46,1.23e+02•a 运行结果:Hello,world!•Hello,world!•H ello Hello例m.n 例static char a[]=“Hello,world!”printf(“%s \n%15s\n%10.5s\n%2.5s\n%.3s\n”,a,a,a,a,a);二、格式输入函数格式: scanf(“格式控制串”,地址表)功能:按指定格式从键盘读入数据,存入地址表指定的存储单元中,并按回车键结束返值:正常,返回输入数据个数地址表:变量的地址,常用取地址运算符&格式字符:d,i,o,x,u,c,s,f,e例scanf(“%d”,&a);输入:10 ↵则a=10例scanf(“%x”,&a);输入:11 ↵则a=17附加格式说明符(修饰符)l 修饰符功能h m *用于d,o,x 前,指定输入为short 型整数用于d,o,x 前,指定输入为long 型整数用于e,f 前,指定输入为double 型实数指定输入数据宽度,遇空格或不可转换字符则结束抑制符,指定输入项读入后不赋给变量例scanf(“%4d%2d%2d”,&yy,&mm,&dd);输入19991015 ↵则1999⇒yy, 10 ⇒mm, 15 ⇒dd例scanf(“%3c%2c”,&c1,&c2);输入abcde ↵则‘a‟⇒c1, …d‟ ⇒c2例scanf(“%3d%*4d%f”,&k,&f);输入12345678765.43↵则123⇒k, 8765.43⇒f例scanf(“%2d •%*3d•%2d”,&a,&b);输入12•345•67↵则12⇒a, 67⇒b输入分隔符的指定–一般以空格、TAB或回车键作为分隔符–其它字符做分隔符:格式串中两个格式符间字符例scanf(“%d%o%x”,&a,&b,&c);printf(“a=%d,b=%d,c=%d\n”,a,b,c);输入123 123 123↵输出a=123,b=83,c=291例scanf(“%d:%d:%d”,&h,&m,&s);输入12:30:45↵则12 ⇒h, 30 ⇒m, 45 ⇒s例scanf(“%d,%d”,&a,&b)输入3,4 ↵则3⇒a, 4 ⇒b例scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);输入a=12,b=24,c=36 ↵说明:–用“%c”格式符时,空格和转义字符作为有效字符输入如scanf (“%c%c%c”,&c1,&c2,&c3);若输入 a bc ↵则a ⇒c1, •⇒c2, b ⇒c3输入数据时,遇以下情况认为该数据结束:遇空格、TAB 、或回车遇宽度结束遇非法输入如scanf(“%d%c%f”,&a,&b,&c);若输入1234a123o .26 ↵则1234 ⇒a, …a‟ ⇒b, 123 ⇒c输入函数留下的“垃圾”:例int x;char ch;scanf(“%d”,&x);ch=getchar();printf(“x=%d,ch=%d \n”,x,ch);执行:123↵输出:x=123,ch=10例int x;char ch;scanf(“%d”,&x);scanf(“%c”,&ch);printf(“x=%d,ch=%d \n”,x,ch);执行:123↵输出:x=123,ch=10解决方法:(1)用getchar()清除(2)用函数fflush(stdin)清除全部剩余内容(3) 用格式串中空格或“%*c ”来“吃掉”例int x;char ch;scanf(“%d”,&x);scanf(“ %c”,&ch);或scanf(“%*c%c”,&ch );格式:getchar( )功能:从键盘读一字符三、字符输入函数例/*ch3_4.c*/#include <stdio.h>main(){ int c;printf("Enter a character:");c=getchar();printf("%c--->hex%x\n",c,c);}运行结果:Enter a character:A A--->hex41字符输出函数格式: putchar( c )参数: c 为字符常量、变量或表达式功能:把字符c 输出到显示器上/*ch3_1.c*/#include <stdio.h>main(){ int c;char a;c=65; a='B';putchar(c); putchar('\n'); putchar(a);}运行结果:A B 例注:使用getchar()和putchar()须编译预处理#include <stdio.h>。