鱼C论坛

 找回密码
 立即注册
查看: 1117|回复: 14

[已解决]10个数字从小到大排序,含鉴别字母,只输数字程序正常,字母鉴别方面有问题

[复制链接]
发表于 2020-10-29 17:38:00 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 ACatSama 于 2020-10-29 21:36 编辑

[
#include <stdio.h>
 
int main()
{
 
        int a[10];
        int i, j, swap;
        printf("请输入10个数字\n");
        LOOP:
        for (i = 0; i < 10; i++)
                scanf("%d", &a[i]);
                if((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A')){
        
                printf("要输入的是数字哦\n");
                goto LOOP;        }
        for (i = 0; i < 9; i++)
                for (j = 0; j < 9-i; j++)
                        if (a[j] > a[j+1])//相邻两个数比较
                        {
                                swap = a[j];//将两个数交换
                                a[j] = a[j+1];
                                a[j+1] = swap;
                        }
 
        for (i = 0; i < 10; i++)
                printf("%d ", a[i]);
 
 
        return 0;
}
最佳答案
2020-10-29 23:20:32
我没法上机,程序是改了,你试试看,能不能正常运行
#include <stdio.h>
 
int main()
{
 
        int a[10];
        int i, j, swap;
        printf("请输入10个数字\n");
 
        for (i = 0; i < 10; i++)
        {
LOOP:      scanf("%d", &a[i]);             // 既然是要重新输入,LOOP 得放在此处 
               if((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))
               {
                     printf("要输入的是数字哦\n");
                     goto LOOP; 
               }
        }
        for (i = 0; i < 9; i++)
        {                                             // 既然是要排序,花括号不可少
                for (j = 0; j < 9-i; j++)
                {                                     // 既然是要排序,花括号不可少
                        if (a[j] > a[j+1])//相邻两个数比较
                        {
                                swap = a[j];//将两个数交换
                                a[j] = a[j+1];
                                a[j+1] = swap;
                        }
                }                                     // 配对的花括号也不可少
        }                                             // 配对的花括号也不可少
 
        for (i = 0; i < 10; i++)
                printf("%d ", a[i]);
 
 
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-29 19:29:36 | 显示全部楼层
发泡语言是啥
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-29 21:38:46 | 显示全部楼层

一个专门用来多个数比大小然后排序的代码,就比如我这边的程序就是输入十个数,然后按大小顺序输出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 22:37:17 | 显示全部楼层
你有没有考虑过
int a 能传递  'a'吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 23:20:32 | 显示全部楼层    本楼为最佳答案   
我没法上机,程序是改了,你试试看,能不能正常运行
#include <stdio.h>
 
int main()
{
 
        int a[10];
        int i, j, swap;
        printf("请输入10个数字\n");
 
        for (i = 0; i < 10; i++)
        {
LOOP:      scanf("%d", &a[i]);             // 既然是要重新输入,LOOP 得放在此处 
               if((a[i]<='z'&&a[i]>='a')||(a[i]<='Z'&&a[i]>='A'))
               {
                     printf("要输入的是数字哦\n");
                     goto LOOP; 
               }
        }
        for (i = 0; i < 9; i++)
        {                                             // 既然是要排序,花括号不可少
                for (j = 0; j < 9-i; j++)
                {                                     // 既然是要排序,花括号不可少
                        if (a[j] > a[j+1])//相邻两个数比较
                        {
                                swap = a[j];//将两个数交换
                                a[j] = a[j+1];
                                a[j+1] = swap;
                        }
                }                                     // 配对的花括号也不可少
        }                                             // 配对的花括号也不可少
 
        for (i = 0; i < 10; i++)
                printf("%d ", a[i]);
 
 
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 23:27:54 | 显示全部楼层
ACatSama 发表于 2020-10-29 21:38
一个专门用来多个数比大小然后排序的代码,就比如我这边的程序就是输入十个数,然后按大小顺序输出

这是叫冒泡排序吧……
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-29 23:49:11 | 显示全部楼层

你明白就行了,

还是教怎么用VS2019吧。我安装完成以后,怎么只有C++没有C呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 09:34:42 | 显示全部楼层
风过无痕1989 发表于 2020-10-29 23:49
你明白就行了,

还是教怎么用VS2019吧。我安装完成以后,怎么只有C++没有C呀

改后缀名就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 12:35:21 | 显示全部楼层
风过无痕1989 发表于 2020-10-29 23:49
你明白就行了,

还是教怎么用VS2019吧。我安装完成以后,怎么只有C++没有C呀

用C++还不行……?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 13:33:53 | 显示全部楼层


搞了一天了,VS2015还是不懂怎么用,试了一个超简单的程序(我原来在VC++6.0与DEV_C++中都运行正常的程序),到了这里,却运行不起来,报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 18:24:50 | 显示全部楼层
风过无痕1989 发表于 2020-10-30 13:33
搞了一天了,VS2015还是不懂怎么用,试了一个超简单的程序(我原来在VC++6.0与DEV_C++中都运行正常的程 ...

……什么程序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 18:47:05 | 显示全部楼层
第一个for循环下面的语句用花括号括起来,现在只是for循环了scanf函数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 20:07:21 | 显示全部楼层

不是程序的问题,是VS2015还不懂用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-30 20:19:00 | 显示全部楼层
LuLD 发表于 2020-10-30 09:34
改后缀名就可以了

已经可以运行C程序了,只是我还不如何用它去调试程序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-31 09:32:32 | 显示全部楼层
风过无痕1989 发表于 2020-10-30 20:19
已经可以运行C程序了,只是我还不如何用它去调试程序

哎,慢慢来吧,转换是一种痛苦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-12 20:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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