班歌投票:一次完整调试
全班 8 个人投票选班歌。程序分三步:数票 → 找出票最多的歌 → 输出结果,最后还挂了一条回归测试。 可现在它选出来的班歌不对,回归测试也没通过。程序里藏着两个 Bug,自己完成一次完整调试: 运行,看输出和画面,说出哪里不对; 对照每首
光标走到哪,字就写到哪
打印就是光标一格一格往后写,\n 让光标回到下一行开头 printf("Hi"); printf("!\n"); printf("C\n"); H i ! C 下面四句连着执行,屏
注释里的代码不会执行
C 有两种注释:// 注释到这一行末尾,/* … */ 可以注释一段。被注释掉的代码不会执行。 先运行,看看打印了什么;然后去掉两处注释符号,让程序输出 1234。
母题:用 printf 画一个 C
每个 printf 打一行,用 * 和 . 拼出一个字母 C(空白处打点): .*** *... *... *... .*** 程序少了中间那一行,把它补上。
变式 1:引号里还有引号
让程序输出(注意是英文双引号): He said "Hi" 现在用的是单引号。直接把单引号换成双引号会怎样?试一试,再想办法让它正确输出。
变式 2:打印 Windows 路径
让程序原样输出一个 Windows 路径: C:\code\hello.c 现在用的是正斜杠 /。直接换成 \ 再运行,看看会印出什么,再把它改对。
变式 3:打印百分号
让程序输出: 下载进度:100% 现在少了最后的百分号。直接在 100 后面加一个 % 会怎样?
变式 4:把一行代码原样印出来
让程序把下面这一行 C 代码原样打印出来: printf("%d\n", x); 里面有双引号、反斜杠和百分号,三种都要处理。程序现在的写法能编译,但印出来不对。
二级 · 程序填空:最小的 C 程序
下面的程序输出 Hi。请在【】处填入正确的内容。 #include 【0】 int 【1】(void) { printf("Hi\n")【2】 return 0; }
二级 · 程序改错:分号和百分号
下面程序的功能是输出: C 语言 及格线 60% 程序中有两处错误。请改正 found 下面一行中的错误,不要改动其他地方,也不要增删行。