第1个回答 2009-05-28
#include <stdio.h>
#include <stdlib.h>
void COUNTVALUE(int*, int*);
void main()
{
FILE *fp;
int CNT=0;
int SUM=0;
COUNTVALUE(&CNT, &SUM);
if((fp=fopen("OUT.DAT", "w"))==NULL)
{
printf("open file error\n");
exit(0);
}
else
fprintf(fp,"CNT=%d, SUM=%d\n", CNT, SUM);
fclose(fp);
}
void COUNTVALUE(int*CNT, int*SUM)
{
int a=0,b=1,c=0;
for(c=1;b>0;c++)
{
a=c+5;
b=8-2*c;
if(b>0)
{
printf("a=%d, b=%d, c=%d\n", a, b, c);
(*CNT)++;
(*SUM)+=(a+b+c);
}
}
}本回答被提问者采纳
第2个回答 2009-05-26
#include <stdio.h>
#include <stdlib.h>
/* 函数申明 */
static void COUNTVALUE(void);
static void WRITEDAT(const int CNT, const int SUM);
/* 主函数 */
void main(void)
{
COUNTVALUE();
}
/* 求解个数和总和 */
static void COUNTVALUE(void)
{
int A = 0, B = 0, C = 0;
int CNT = 0;
int SUM = 0;
/* 由上面的条件和两个不定方程组可以知道2C = (8 -B)且 C>0 */
for( B = 2; B < 8; B = B + 2 )
{
C = (8 - B)/2;
A = C + 5;
CNT++;
SUM += A + B + C;
}
/* 调用函数WRITEDAT输出到文件中 */
WRITEDAT( CNT, SUM);
}
/* 输出到文件 */
static void WRITEDAT(const int CNT, const int SUM)
{
FILE *fp = NULL;
char caFileName[ 10 + 1];
/* 确定输出文件名 */
memset( caFileName, 0x00, sizeof( caFileName) );
sprintf( caFileName, "%s", "OUT.DAT");
fp = fopen( caFileName, "w+");
if( fp == NULL)
{
printf( "创建输出文件出错");
exit(1);
}
/* 创建输出文件成功,输出结果 */
fprintf( fp, "CNT = %d; SUM = %d\n", CNT, SUM);
fclose( fp);
}
第3个回答 2009-05-26
知道里面问问题的人都像是学校老师啊 不停的出2级C的题目来考俺们~~~真是怕怕
第4个回答 2009-05-27
本来准备回答的~~二楼的回答已经挺好了 就算了