#include stdio.h
公司主营业务:做网站、网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出竞秀免费做网站回馈大家。
#define SIZE 255+1 /*假设字符串最长为255个字节*/
void main()
{
void analyze(char *test);
char test[SIZE];
gets(test);
analyze(test);
};
void analyze(char *test)
{
int i=0;
int word=0, /*字母个数*/
num=0, /*数字个数*/
space=0, /*空格个数*/
other=0; /*其它字符个数*/
while(test[i]!='\0')
{
/*以下数字可查ASCII表得到*/
if(test[i]==32) /*空格*/
space++;
else if(test[i]=48test[i]=57)/*数字*/
num++;
else if((test[i]=65test[i]=90)||(test[i]=97test[i]=122))/*字母*/
word++;
else/*其它*/
other++;
i++;
}
printf("%d words\n",word);
printf("%d numbers\n",num);
printf("%d spaces\n",space);
printf("%d other words\n",other);
}
你在栈中使用了过多空间(例如开辟了超大数组)。将占用过多空间的变量移到全局区或者使用malloc为其在堆中分配内存。
#include
#include
char format[]="%s%s\n";
char hello[]="Hello";
char world[]="world";
HWND hwnd;void main(void)
asm
//push NULL
//call dword ptr GetModuleHandle
//mov hwnd,eax push MB_OK mov eax,offset world push eax mov eax,offset hello push eax push 0//说明此处不能将前面注释掉代码处得到的hwnd压栈,否则对话框弹不出来。
call dword ptr MessageBox
}
}
WINDOWS程序MessagBox
WINDOWS或控制台 assert
C/C++ code
// crt_assert.c
// compile with: /c
#include stdio.h
#include assert.h
#include string.h
void analyze_string( char *string ); // Prototype
int main( void )
{
char test1[] = "abc", *test2 = NULL, test3[] = "";
printf ( "Analyzing string '%s'\n", test1 ); fflush( stdout );
analyze_string( test1 );
printf ( "Analyzing string '%s'\n", test2 ); fflush( stdout );
analyze_string( test2 );
printf ( "Analyzing string '%s'\n", test3 ); fflush( stdout );
analyze_string( test3 );
}
// Tests a string to see if it is NULL,
// empty, or longer than 0 characters.
void analyze_string( char * string )
{
assert( string != NULL ); // Cannot be NULL
assert( *string != '\0' ); // Cannot be empty
assert( strlen( string ) 2 ); // Length must exceed 2
}
扩展资料:
#include windows.h
#include Commdlg.h
#include stdio.h
// 返回值: 成功 1, 失败 0
// 通过 path 返回获取的路径
int FileDialog(char *path)
{
OPENFILENAME ofn;
ZeroMemory(ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn); // 结构大小
ofn.lpstrFile = path; // 路径
ofn.nMaxFile = MAX_PATH; // 路径大小
ofn.lpstrFilter = "All\0*.*\0Text\0*.TXT\0"; // 文件类型
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
return GetOpenFileName(ofn);
}
int main(char argc, char *argv[])
{
char szFile[MAX_PATH] = {0};
if(FileDialog(szFile))
{
puts(szFile);
}
getchar();
return 0;
}
下面是我写的分解质因数的程序,你参考一下
#include stdio.h
#include math.h
void analyze(int n)
{
int a[20];
int count = 0;
int i;
int number = n;
while(1)
{
for(i = 2; i (int)sqrt(n); i++)
{
if(number % i == 0)
{
a[count] = i;
count++;
number = number / i;
break;
}
}
if(number == 1)
{
break;
}
}
printf("%d = ", n);
for(i = 0; i count; i++)
{
printf("%d * ", a[i]);
}
printf("\b\b");
}
void main()
{
int number;
printf("please input a number: ");
scanf("%d", number);
analyze(number);
}