用vc++命令行参数实现数字从大到小排序
答案:1 悬赏:80 手机版
解决时间 2021-11-21 11:28
- 提问者网友:十年饮冰
- 2021-11-20 23:41
用vc++命令行参数实现数字从大到小排序
最佳答案
- 五星知识达人网友:孤独的牧羊人
- 2021-11-21 01:03
如果是控制程序,主函数和入口可以带参数的,第二个参数为字符串 指针数组,第一个参数是整形,指明第二个参数包含几个字符串指针(其中第一个字符串为链接后程序的文件名,其它字符串为命令行参数。如 通过 "aaa.exe 1 2 3 4 5 6 7 "启动程序;以下为程序的源文件,则:
#include
#include
int main( int argc char *argv[])
{
//argc: 字符串数,等于8
//argv: 字符串指针数组, 分别为‘aa.exe’ , '1', '2' , .....'7';
//用户这时就可以用各种方法对argv 进行排序了。
//如果参数是数字,可以用 atoi 、atof 等把字符串转变成 数字,以便比较
//下面以对参数按字符串方式排序 简单的 冒泡法
int i,j;
for( i = 1; i< argc - 1; i++)
{
for( j = i+1; i< argc ; i++)
{
char * tmp;
if ( strcmp( argv[i] ,argv[j] < 0)
{
tmp = argv[i],argv[i] = argv[j],argv[j] = tmp;
}
}
}
//输出
for(int i = 1; i< argc ; i++)
printf("%s
", argv[i]);
return 0;
}
#include
#include
int main( int argc char *argv[])
{
//argc: 字符串数,等于8
//argv: 字符串指针数组, 分别为‘aa.exe’ , '1', '2' , .....'7';
//用户这时就可以用各种方法对argv 进行排序了。
//如果参数是数字,可以用 atoi 、atof 等把字符串转变成 数字,以便比较
//下面以对参数按字符串方式排序 简单的 冒泡法
int i,j;
for( i = 1; i< argc - 1; i++)
{
for( j = i+1; i< argc ; i++)
{
char * tmp;
if ( strcmp( argv[i] ,argv[j] < 0)
{
tmp = argv[i],argv[i] = argv[j],argv[j] = tmp;
}
}
}
//输出
for(int i = 1; i< argc ; i++)
printf("%s
", argv[i]);
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯