#include <iostream>
using namespace std;
int main(int argc, char *argv[]) {
if(argv[0] < argv[1])
cout << "IN ORDER";
else
cout << 'NOT IN ORDER";
return 0;
}
不知道如何。
什么是命令行参数?我该如何使用它们? 如果命令行参数按字母顺序升序,我必须编写一个打印在打印件上的程序是“IN ORDER”;如果没有打印“NOT IN ORDER”,如果这些参数乱序。
答案 0 :(得分:0)
您的命令行参数以索引1开头,因为索引0是可执行文件本身的名称。你需要在比较中区分大小写吗?如果没有,你可以做一些简单的事情:
#include <string.h>
#include <stdio.h>
int main( int argc, char ** argv )
{
int index;
/*for( index = 1; index < argc; ++index )
* printf( "argv[%d] = %s\n", index, argv[index] );
*/
for( index = 1; index < argc - 1; ++index )
if( strcmp( argv[index], argv[index + 1] ) > 0 )
break;
int in_order_flag = ( index == argc - 1 );
printf( in_order_flag ? "IN ORDER\n" : "NOT IN ORDER\n" );
return 0;
}