100分求解简单C语言题

a3fd_34234jda1 2007-05-14 11:20:31
1)如何查看CSDN帐号 所剩的积分?

2)include 命令包含头文件时,会不会因为包含的头文件过多,而导致程序编译后占用更多空间?

3)假设用单字节来存储-128, 在计算机中怎么存储的(为什么会是10000000)(具体步骤, 怎么转化)?

4)一道程序题,测得以下数据 (写出具体过程, 思路的多加分)
X: 1 2 3 4 5
Y: 1 3 5 3 1
请写出y = f(x)的解析式

5)
//编译器VC6, 为什么数组会溢出,而且调试的时候, 跟文本的内容根本不一样
//文本(开头)部分内容如下:
/*
s

1.域中的某台安装Windows 2000 Professional的计算机上的Administrator账户是()
A、 网络管理员
B、 本地管理员
C、 域管理员
D、 企业管理员

2.对等网络又称()
A、 组织单位
B、 域
C、 组
D、 工作组
3.两个Windows 2000 域DomainA和DomainB,使用以下策略以使DomainA中账户a能访问

DomainB中成员计算机M上的资源:将账号a放入DomainA的本地域组DLA,然后在M上对DLA授

权,问:能否实现?()
A、 能
B、 不能
*/
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
FILE *fp;
int i = 0;
char questions[100];

if ((fp = fopen("试题.txt", "r")) == NULL)
{
P("Cannot open file\n");
exit(0);
}

do
{
questions[i] = fgetc(fp);
putchar(questions[i]);
i++;
}while (questions[i] != '\n'); //为什么这句while会不起作用呢

fclose(fp);

return 0;
}
...全文
237 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jixingzhong 2007-05-14
  • 打赏
  • 举报
回复
为什么数组会溢出

do
{
questions[i] = fgetc(fp);
putchar(questions[i]);
i++;
}while (questions[i] != '\n'); //为什么这句while会不起作用呢
==============================
i++ 在判断之前,也就是 while 条件判断的 questions[i] 总是读取字符位置的后面一个数组位置,这个位置的内容通常是不可知的, 所以 while会不起作用。

读取文件的判断常用:(建议使用这个方式)
while ((questions[i] = fgetc(fp)) != EOF)putchar(questions[i++]);;
jixingzhong 2007-05-14
  • 打赏
  • 举报
回复
3)假设用单字节来存储-128, 在计算机中怎么存储的(为什么会是10000000)(具体步骤, 怎么转化)?

-128, 原码10000000, 反码 01111111, 补码就是 反码+1 = 10000000。
(计算机中以补码保存的)
jixingzhong 2007-05-14
  • 打赏
  • 举报
回复
4)一道程序题,测得以下数据 (写出具体过程, 思路的多加分)
X: 1 2 3 4 5
Y: 1 3 5 3 1
请写出y = f(x)的解析式

2次曲线拟和,
可以考虑使用2乘法
xiaolh 2007-05-14
  • 打赏
  • 举报
回复
do
{
questions[i] = fgetc(fp);
putchar(questions[i]);
i++;
}while (questions[i] != '\n'); //为什么这句while会不起作用呢
====================================================================
i++要放到后面
改为while (questions[i++] != '\n');
aminconi 2007-05-14
  • 打赏
  • 举报
回复
4)一道程序题,测得以下数据 (写出具体过程, 思路的多加分)
X: 1 2 3 4 5
Y: 1 3 5 3 1
请写出y = f(x)的解析式


f(x) = 5 - | 3 - x | * 2
ouyh12345 2007-05-14
  • 打赏
  • 举报
回复
3、正确。第一位是符号位,为1表示负数,1FFFFFFF为-127,-127再加-1后,1后面数逸出,结果为10000000
ouyh12345 2007-05-14
  • 打赏
  • 举报
回复
1、我的技术社区--我的社区积分
2、是的

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧