2026年1月10日
收获:
1.scanf中的普通变量需要加&,数组/指针不需要&,取要存入的地址将输入的值放入。 2.字母的ASCII码输出时可直接用%d,输出字符型变量的ASCII码。 3.题目中明确换行的地方再换,输入提示行基本不用加换行\\n。 4.结构体定义完成后要加;结束,以实参传入:定义时要加*,调用时加&,取元素时用->; 以形参传入:声明和定义时都不用加*,调用时不加&,取元素用.。 5.改错题注意检查判断的==,函数返回值,数组行列对应[m][n]即m行n列。 6.限制输入字符串的长度可用fgets(str,sizeof(str),stdin)超过定义长度的内容会被截断,要得到字符串长度需要加#include <string.h>头文件中的strlen(str)函数,字符串以/0结尾,长度需要减1才是内容的长度。
题目:
1、Q1700.(语言: C)从键盘输入一个字符,如果它是大写的英文字母,则将其转换成小写
的英文字母,然后将转换的字符及其ASCII码值显示在屏幕上;如果它 是小写的英文字母,则将其转换成大写的英文字母,然后将转换的字符 及其ASCII码值显示在屏幕上;如果输入的是其它字符则显示输入错误。 ****输入提示信息格式: 无 ****输入数据格式要求: %c ****输出数据格式要求: 若输入的是大小写英文字母,则输出::“%c,%d” 若输入的是其它字符,则输出:“Input error!” 注:已知大写英文字母A的ASCII码值是65 小写英文字母a的ASCII码值是97
#include <stdio.h>
int main()
{
int ch;
scanf(\”%c\”,&ch); //用ch=getchar();也可以
if(ch>64 && ch<91){
ch+=32;
}else if(ch>96 && ch<123){
ch-=32;
}else{
printf(\”Input error!\”);
return 0;
}
printf(\”%c,%d\”,ch,ch);
return 0;
}
2、Q1325.有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面m个数。
程序的运行示例如下: 共有多少个数?5 后移多少个?2 请以,号为间隔输入5个数。 1,2,3,4,5 移动后顺序为: 4,5,1,2,3
#include <stdio.h>
int main()
{
int n,b;
printf(\”共有多少个数?\”);
scanf(\”%d\”,&n);
int a[n];
printf(\”后移多少个?\”);
scanf(\”%d\”,&b);
printf(\”请以,号为间隔输入%d个数。\\n\”,n);
for(int i=0



![P11246 [GESP202409 六级] 小杨和整数拆分-171主机测评](https://www.171host.com/wp-content/uploads/2026/11/20261108100631-6af049a75855c-220x150.png)

