急救 跪下求善良的C语言皇帝前进! 烫热问题!

发布于 美食 2024-05-10
13个回答
  1. 匿名用户2024-01-28

    printf("请输入新的**号码:")

    scanf("%s",newtel);

    strcpy(stud[i].tel,newtel);

    scanf("%s",newname);

    strcpy(stud[i].qq,newqq);

    scanf("%s",newemail);

    strcpy(stud[i].email,newemail);

    看看你的段落**,你没注意到你写错了位置吗,“scanf("%s",newname);这里的“newname”应该是“newqq”。

    你的程序还不错,你只需要小心点,呵呵。

    我还认为 3 位数的拆分兆需要改进:

    1.修改时,重新输入信息的顺序应与初始输入信息的顺序相同,初始是先输入学号,判断掩码后再输入姓名,修改时变为先输入姓名再输入学号, 并且无法判断学生编号是否已经存在。

    2 是显示列表项上方的所有记录,并显示位置偏移的数据项。

    3 是你设置了 char 类型的长度,但如果输入字符超过这个长度怎么办?

  2. 匿名用户2024-01-27

    问题在于将字符串复制到数组中。 第一次折磨芹菜,就没什么问题可谈了。

    向后复制内容时,数据将被覆盖。

    你的**:p rintf("请输入新的邮箱:")scanf("%s",newemail);

    strcpy(stud[i].email,newemail);

    **的好习惯:

    scanf("%s",newemail);

    strncpy(stud[i].email,newemail,sizeof(stud[i].email));

    stud[i].email[sizeof(stud[i].email)-1]='0';

    通过VC6调试。

  3. 匿名用户2024-01-26

    自动填充CC,CCCC是处理Unicode熨烫的最简单方法。

    如果判断输出为空。

    将其替换为空格或 00000

  4. 匿名用户2024-01-25

    分析1、结构学生[num]; 你不是总是说你定义了多个人,但只输入一次信息吗? 定义 3 *人数*

    2、 case 2:print(student,num);break;调用输出函数时,num 参数为输出 num individual, 3。因为只输入了一个学生的信息,所以另一个学生[1],学生[2]。没有值,最后的记忆直接输出,是随机乱码。

    解决方案思路。 场景 1:

    输入信息时,您可以输入 num times,即 3 次。

    解决方法2:调用output时,只要求他输出你输入的信息数量。

    case 2: print(student,1);break;在参数 2 中,num 替换为 1,因为您只输入一次信息。

    方案 3:推荐方案

    在定义数组时进行初始化,使其初始化为 0,这样在输出时至少不会出现乱码。

    struct stu student[num] = ;

    或者 struct stu student[num] ;

    memset(student,0,sizeof(stu)*num);

  5. 匿名用户2024-01-24

    多次刻录可能是由未初始化或分配的字符数组或字符指针引起的。

    以下是一些示例:

    char a[5];

    printf("%s", a);由于字符数组 a 未初始化或分配,因此存在多次刻录。

  6. 匿名用户2024-01-23

    #includeint main(void) }b[j]='\0';C 字符串的定义是它必须有一个结尾'\0',或者你会继续在内存中打印各种单词,直到有'\0'出现。 printf("%s",b);

  7. 匿名用户2024-01-22

    这是因为您没有分配 string-tail 标记'\0'。

    #include

    #include

    int main(void)

    int i,j,n;

    char a[100],b[100];

    scanf("%s",a);

    n=strlen(a);

    for(i=0;i

  8. 匿名用户2024-01-21

    这样做的原因是您的字符串缺少字符串后面的结束标记'\0'

  9. 匿名用户2024-01-20

    在那 for(i=0; i<=n;i++)str_2[i]=str_1[n-i];在语句后添加一句话 str 2[i]=str 1[n+1];

    问题是您复制了有效字符并忽略了“0”字符。

    正常**:包括

    void turn(char str_1[50],char str_2[50])

    int main(void)

  10. 匿名用户2024-01-19

    它确实是由不添加“0”引起的。 如果未初始化,str 2 将自动初始化为 0xccccccccc...。这个初始化是编译器帮你调试的),因为没有'0',字符串输出不能结束,不变的0xccccc会跟着输出,输出会根据字符编码转换成hot和hot。

    字符串的末尾不会自动附加 '0'“,这只会在初始化字符串时发生,例如 char str[50]="abc"这时候最后会自动添加'0',其余时间手动添加'0'(当然各种字符串相关的库函数都会给你加'0',所以一般不要在意)。

  11. 匿名用户2024-01-18

    造成这种情况的根本原因是字符串是乱码。

    内存未初始化,C程序运行时,所有二进制位的值都是这样110011001100的,十六进制表示为0xcc,英文是不可打印的字符,而作为中文(两个字节为一),0xcccc为“hot”字。

  12. 匿名用户2024-01-17

    0xcc 字符串很热,VC 会自动用0xcccccccc填充未初始化的堆栈内存。

  13. 匿名用户2024-01-16

    它只是乱码字符。 如果处于调试模式,VC 类会用0xcc [可能是中断指令] 填充某些区域,出现问题时很容易被调试器捕获。

    归根结底,这是胡言乱语。 这取决于编译器填充了多少未使用的区域内存,也许是随机的,也许是 IDE 完成的。

相关回答
6个回答2024-05-10

Ekeberg 在 200 年前发现了氧化物形式的钽。 然而,六氟钽酸钾(K2TAF7)性质的发现和研究是钽化学和生产开发的真正开端。 >>>More

4个回答2024-05-10

开机后按F8键立即进入高级选项,选择“最新正确配置”回车修复,按F8键进入安全模式恢复系统或重新安装系统(如果重装也是蓝屏,建议大修)。 >>>More

14个回答2024-05-10

int a=3,b=;

第一 IFIF(a>b) a=b; c=a; >>>More

15个回答2024-05-10

萧倩——“穗”幻修。

书中的一切都是为进化服务的,总的来说,这本书是成功的,但对读者来说感觉太单调了。 >>>More

17个回答2024-05-10

如果我没记错的话,你的意思是每个村庄只有两条路,一进一出。 >>>More