VC++问题。。。求教达人
#include<iostream.h> #include<string.h> void sort(char (*p)[100],int n) { char temp[100]; int i,j; for(i=0;i<n;i++) { for(j=i+1;j<n+1;j++) if(strcmp(p[i],p[j])>0) { strcpy(temp,p[i]); strcpy(p[i],p[j]); strcpy(p[j],temp); } } } void main(void) { char str[100]; int j; cout<<"请定义字符串的个数"<<endl; cin>>j; char (*p)[100]=new char[j][100]; cout<<"请输入长度不等的"<<j<<"个字符串"<<endl; for(int i=0;i<j;i++) { cin.getline(p[i],100); } sort(p,j); for(int k=0;k<j;k++) cout<
在cin>>j的时候,你肯定输入一个数字,然后输入回车,对吧? 问题就在这里,数字给了j,而回车就给了下次的cin, 也就是cin.getline(...),这里就给p[0]赋了个空串。 若你输入j为1,不是直接就结束了,而是将这个空串排序,你看看是不是在"press any key to continue"上面有一个空行? 若你输入10,就是后来你输入的9个字符串,在加上那个空串排序。 当然空行总是被排到第一个位置。 你可以在输入数字的时候如此操作:(数字+空格+第一个字符串) 如:10 sdgsdfg 补充一点:最后应该delete [] p;来释放空间。
#include #include void sort(char (*p)[100],int n) { char temp[100]; int i,j; for(i=0;i0) { strcpy(temp,p[i]); strcpy(p[i],p[j]); strcpy(p[j],temp); } } } void main(void) { char str[100]; int j; cout>j; j++; char (*p)[100]=new char[j][100]; cout<<"请输入长度不等的"<getline(p[i],100); } sort(p,j); for(int k=0;k
答:这是我用VC++写的 #include using namespace std; void HuiWen(char *p,int key) { char *a,...详情>>
答:桌面图标是无法自动得到,因为图标的存在与否应用程序无法知道。 如果你确认在桌面上可能会有这个图标,那么你只要遍历桌面所有的图标,然后把指向该应用程序的图标都更改...详情>>