鱼C论坛

 找回密码
 立即注册
查看: 3461|回复: 0

C6改大写输出

[复制链接]
发表于 2022-5-12 15:45:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 我爱橙 于 2022-5-12 16:09 编辑

读入一行英文文本将其中每个单词的最后一个字母改成大写,然后输出此文本行(这里的单词是指由空格隔开的字符串)
例如:若输入"I am a student."
则应输出"I aM A studenT."


  1. #include"conio.h"
  2. #include"stdio.h"
  3. #include"ctype.h"
  4. #include"string.h"

  5. up1st(char *p)
  6. {
  7.    
  8. /**************FOUND********/
  9.     integer k=0;
  10.     for(;*p;p++)
  11.     if(k)
  12.     {
  13.       /**************FOUND********/
  14.       if(*p='')
  15.       {
  16.               k=0;
  17.               /**************FOUND********/
  18.         *(p-1)=toupper(*(p-1);
  19.           }
  20.         }
  21.     else if(*p!='')k=1;
  22.        *(p-1)=toupper(*(p-1));
  23. }

  24. main()
  25. {
  26.         char chrstr[81];
  27.         clrscr();
  28.         printf("\nPlease enter a string:");
  29.         gets(chrstr);
  30.         printf("\n\nBefore changing:\n%s",chrstr);
  31.     up1st(chrstr);
  32.     printf("\nAfter changing:\n%s",chrstr);
  33. }
复制代码


15        13         if(*p='  ')                         [Error] empty character constant
22        17     else if(*p!='')k=1;         [Error] empty character constant
10        5        [Error] 'integer' was not declared in this scope
12        8        [Error] 'k' was not declared in this scope
29        9        [Error] 'clrscr' was not declared in this scope


correct:
1.int k=0;         
2. if(*p=='  ')
3.*(p-1)=toupper(*(p-1));                                     √  



改正错误后运行:
  1. #include"stdio.h"
  2. #define N 10

  3. /**************FOUND********/
  4. int fun(int *a,int *b,int n)
  5. {
  6.     int *c,max=*a;
  7.     for(c=a+1;c<a+n;c++)
  8.        if(*c>max)
  9.        {
  10.                max=*c;
  11.                /**************FOUND********/
  12.                *b=c-a;
  13.            }
  14.            return max;
  15. }

  16. int main()
  17. {
  18.     int a[N],i,max,p=0;
  19.     printf("Please enter 10 integers:\n");
  20.     for(i=0;i<N;i++)           
  21.        /**************FOUND********/
  22.        scanf("%d",a[i]);
  23.     /**************FOUND********/
  24.     fun(a,&p,N);
  25.     printf("max=%d,position=%d",max,p);
  26. }
复制代码


Q:为什么输入a[10]=0123456789,得到输出是max=1,position=6,程序功能没有得到实现啊?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-16 09:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表