标题华南农业大学C语言程序设计(实验二)
1117 变量定义,按要求完成程序
时间限制:1000MS 内存限制:65536K
提交次数:4289 通过次数:2746
题型: 填空题 语言: GCC
Description 下面给出一个程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。
#include "stdio.h"
main()
{
_______________________ /*定义整型变量a和b*/
_______________________ /*定义浮点变量i和j*/
a=5;
b=6;
i=3.14; j=i*a*b;
printf("a=%d,b=%d,i=%.2f,j=%.2f\n", a, b, i, j);
}
参考答案
int a,b;
double i,j;
6568 在显示屏上显示指定字符
时间限制:1000MS 内存限制:65536K
提交次数:127 通过次数:77
题型: 编程题 语言: G++;GCC
Description 要求编写一个程序,在显示屏上显示如下内容(全为半角字符,且不包含空格):
C:\ABC.TXT
[提示] 注意转义字符在程序中的使用。
输入格式 无
输出格式 如题
输出样例 C:\ABC.TXT
#include<stdio.h>
int main()
{
printf("C:\\ABC.TXT");
return 0;
}
1119 基本运算,写出程序运行结果
时间限制:1000MS 内存限制:65536K
提交次数:5594 通过次数:2736
题型: 填空题 语言: GCC
Description
阅读下面程序,写出运行结果:
程序到此结束 请用下面程序输出你的答案(注意转义字符的正确表达)
#include "stdio.h"
main()
{
printf("_______________________");
}
参考答案
0,2,1,15.000000,1.000000,1.500000
不懂的,看后面的解析
解析:b先把值赋给c,然后b再++(也就是自增),所以c=1,b=2,而后面的%f格式,在没有条件限制的情况下,默认保留小数点后六位。同时,请记得,输入小数点的时候,需要英文输入法,中文的不行!!!然后15/10=1,因为没有申明,默认,这两个数是int类型,从而他会直接省略小数点后面所有!!!但如果是15/10.0或者15.0/10,乃至15.0/10.0的话,结果都是1.5,注意他们三个和前面的区别,在计算前,就把其中一个变成小数的话,就不会有精准度丢失(也就是小数点后面的丢失)的情况!!
1118 赋值表达式与赋值语句,写出程序运行结果
时间限制:1000MS 内存限制:65536K
提交次数:4843 通过次数:2629
题型: 填空题 语言: GCC
Description
阅读下面程序,写出运行结果:
程序到此结束 请用下面程序输出你的答案(注意转义字符的正确表达)
#include “stdio.h”
main()
{
printf("_______________________");
}
参考答案
3.500000,3,330,J,a
解析:printf格式符%f在没有申明的情况下,默认保留小数点后六位;
因为b定义的时候是int类型,所以无法存小数部分,所以它只能得到3;
d得到c给的330,但是d是char类型的变量,char类型变量只能占一个字节,一个字节就是八个二进制位,所以char最多能表示255的数(255=2的八次方-1),二进制表示为 11111111,这就是255,不能再表示多了,多的话就溢出了;而这里面d为330,已经溢出,为保证它能表示出来,所以330-256=74,其实d真正得到的数是74(注意是减256,不是255,这个是数学问题,自己好好琢),又因为printf的格式符是%c,也就是输出格式是一个字符,那就需要打开课本207,后面的ASCII表,你会发现74对应的字符就是J(注意是大写的J,不是小写的,小写的j是106)
而e获得的’\141’,这个其实一个字符来的,而且里面是八进制 你们要对单引号’‘敏感才行,单引号里面表示一个字符,双引号""里面表示一个字符串 如’a’这个叫字符a
"a"这个叫字符串a,到后面你们就明白了
一般字符’'时,他们喜欢用
'\+三位数(八进制表示法) ’
‘\+两位数(十六进制表示法)’
这里’\141‘也就是八进制表示法,且为97,又因为printf的格式符为%c,还是要打开课本207,你会发现,ASCII97,对应的就是小写的a,所以输出a