当前位置:首页 » 操作系统 » c论坛源码

c论坛源码

发布时间: 2022-08-25 05:40:54

c语言程序设计!跪求源码

#include<stdio.h>

#define Mon 1
#define Tues 2
#define Wed 3
#define Thur 4
#define Fri 5
#define Sat 6
#define Sun 0

#define January_days 31
#define February_days 28
#define March_days 31
#define April_days 30
#define May_days 31
#define June_days 30
#define July_days 31
#define August_days 31
#define September_days 30
#define October_days 31
#define November_days 30
#define December_days 31

#define first1month January_days
#define first2month January_days+February_days
#define first3month January_days+February_days+March_days
#define first4month January_days+February_days+March_days+April_days
#define first5month January_days+February_days+March_days+April_days+May_days
#define first6month January_days+February_days+March_days+April_days+May_days+June_days
#define first7month January_days+February_days+March_days+April_days+May_days+June_days \
+July_days
#define first8month January_days+February_days+March_days+April_days+May_days+June_days \
+July_days+August_days
#define first9month January_days+February_days+March_days+April_days+May_days+June_days \
+July_days+August_days+September_days
#define first10month January_days+February_days+March_days+April_days+May_days+June_days \
+July_days+August_days+September_days+October_days
#define first11month January_days+February_days+March_days+April_days+May_days+June_days \
+July_days+August_days+September_days+October_days+November_days

int known_weekday = Tues;
int known_year = 1901;
int konwn_month = 1;
int known_day = 1;

int day_count(int month)
{
switch(month)
{
case 1: return 0;break;
case 2: return first1month;break;
case 3: return first2month;break;
case 4: return first3month;break;
case 5: return first4month;break;
case 6: return first5month;break;
case 7: return first6month;break;
case 8: return first7month;break;
case 9: return first8month;break;
case 10: return first9month;break;
case 11: return first10month;break;
case 12: return first11month;break;
}
}

/*char * month_name(int month)
{
switch(month)
{
case 1:
return "January";
break;
case 2:
return "February";
break;
case 3:
return "March";
break;
case 4:
return "April";
break;
case 5:
return "May";
break;
case 6:
return "June";
break;
case 7:
return "July";
break;
case 8:
return "August";
break;
case 9:
return "September";
break;
case 10:
return "October";
break;
case 11:
return "November";
break;
case 12:
return "December";
break;
default:
break;
}
}*/

char * month_name(int month)
{
switch(month)
{
case 1:
return "一月";
break;
case 2:
return "二月";
break;
case 3:
return "三月";
break;
case 4:
return "四月";
break;
case 5:
return "五月";
break;
case 6:
return "六月";
break;
case 7:
return "七月";
break;
case 8:
return "八月";
break;
case 9:
return "九月";
break;
case 10:
return "十月";
break;
case 11:
return "十一月";
break;
case 12:
return "十二月";
break;
default:
break;
}
}

/*按格式打印某年某月名称*/
void first_line_print(int month, int year)
{
//printf("%20s %d \n",month_name(month),year);
printf("%8d年 %s \n",year, month_name(month));
}

/*按格式打印星期名称*/
void week_print()
{
//printf("%-6s%-6s%-6s%-6s%-6s%-6s%-6s\n","Sun.", "Mon.", "Tues.", "Wed.", "Thur.", "Fri.", "Sat.");
printf("%-3s%-3s%-3s%-3s%-3s%-3s%-3s\n","日", "一", "二", "三", "四", "五", "六");
}

/*计算该年该月份与已知日子之间的距离天数*/
int date_distance_count(int month, int year)
{
int leap_year_count = 0;
int i;
int distance;

if (year > known_year)
{
for (i=known_year; i<year; i++)
{
if(((i%4 == 0) && (i%100 != 0) ) || (i%400 == 0))
{
leap_year_count++;
}
}

if (month > 2)
{
if(((year%4 == 0) && (year%100 != 0) ) || (year%400 == 0))
{
leap_year_count++;
}
}
}
else
if (year == known_year)
{
if (month > 2)
{
leap_year_count = 1;
}
}

distance = (year - known_year)*365 + leap_year_count + day_count(month);

return distance;
}

/*确定该月份第一天是星期几*/
int makesure_firstday_weekday(int month, int year)
{
int date_distance = 0;
int weekday;

date_distance = date_distance_count(month, year);
weekday = (known_weekday + date_distance)%7;

return weekday;
}

/*依次打印出该月份的日子*/
void print_in_turn(int month, int firstday, int year)
{
int i = 1;
int weekday;

switch(firstday)
{
case Sun:
break;
case Mon:
printf("%-3s","");
break;
case Tues:
printf("%-6s","");
break;
case Wed:
printf("%-9s","");
break;
case Thur:
printf("%-12s","");
break;
case Fri:
printf("%-15s","");
break;
case Sat:
printf("%-18s","");
break;
}

switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
for(i=0; i<31; i++)
{
weekday = (firstday + i)%7;
printf("%-3d",i+1);

if(weekday == Sat)
{
printf("\n");
}
}
break;
}
case 2:
{
if(((year%4 == 0) && (year%100 != 0) ) || (year%400 == 0)) /*闰年*/
{
for(i=0; i<29; i++)
{
weekday = (firstday + i)%7;
printf("%-3d",i+1);

if(weekday == Sat)
{
printf("\n");
}
}
break;
}
else /*平年*/
{
for(i=0; i<28; i++)
{
weekday = (firstday + i)%7;
printf("%-3d",i+1);

if(weekday == Sat)
{
printf("\n");
}
}
break;
}

}
case 4:
case 6:
case 9:
case 11:
{
for(i=0; i<30; i++)
{
weekday = (firstday + i)%7;/*计算该天是星期几*/
printf("%-3d",i+1);

if(weekday == Sat)
{
printf("\n");/*如果是星期六,则换行*/
}
}
break;
}
}
}

void date_print(int month, int year)
{
int firstday;

firstday = makesure_firstday_weekday(month, year);
print_in_turn(month, firstday, year);
printf("\n");
}

void main_month(int month, int year)
{
first_line_print(month, year);
week_print();
date_print(month, year);
printf("\n\n");
}

void main_calendar(int year)
{
int i;
for(i=1; i<=12; i++)
{
main_month(i, year);
}
}

int main()
{
int year;

printf("请输入年份:year = ");
scanf("%d",&year);
printf("\n");

while(year < 1902)
{
printf("请输入大于1901的年份\n");

printf("请输入年份:year = ");
scanf("%d",&year);
printf("\n");
}

main_calendar(year);

scanf(" ");
return 0;
}

❷ 求高人解决C语言程序设计问题.....不要再别的论坛上COPY!(财富值不多了~)

c语言的代码如下,先输入n,再依次输入各个点的坐标,先x后y,下面还有我用c#运行以后的图形,证明是对的,你懂c#的话可以把源码给你

#include<stdio.h>

#include<math.h>

#include<stdlib.h>

typedefstructPointStruct

{

intX,Y;

}Point;

Pointm_points[100];

intn;

doubleCountR(intx,inty)

{

doublemaxr=1,temp;

inti;

for(i=0;i<n;i++)

{

temp=(m_points[i].X-x)*(m_points[i].X-x)+(m_points[i].Y-y)*(m_points[i].Y-y);

if(temp>maxr)

maxr=temp;

}

returnsqrt(maxr);

}

voidReadData()

{

inti;

puts("inputn:");

scanf("%d",&n);

puts("inputnpoint:(x0y0x1y1...)");

for(i=0;i<n;i++)

{

scanf("%d%d",&m_points[i].X,&m_points[i].Y);

}

puts("...");

}

main()

{

Pointsum={0,0};

inti;

doubleMinDistance;

doubletempDis;

intflag=0;

ReadData();

for(i=0;i<n;i++)

{

sum.X+=m_points[i].X;

sum.Y+=m_points[i].Y;

}

sum.X/=n;

sum.Y/=n;

MinDistance=CountR(sum.X,sum.Y);

while(1)

{

flag=1;

tempDis=CountR(sum.X+1,sum.Y);

if(tempDis<MinDistance)

{

MinDistance=tempDis;

sum.X++;

flag=0;

}

tempDis=CountR(sum.X-1,sum.Y);

if(tempDis<MinDistance)

{

MinDistance=tempDis;

sum.X--;

flag=0;

}

tempDis=CountR(sum.X,sum.Y+1);

if(tempDis<MinDistance)

{

MinDistance=tempDis;

sum.Y++;

flag=0;

}

tempDis=CountR(sum.X,sum.Y-1);

if(tempDis<MinDistance)

{

MinDistance=tempDis;

sum.Y--;

flag=0;

}

if(flag!=0)

break;

}

floatr=(float)CountR(sum.X,sum.Y);

printf("x=%dy=%dr=%f ",sum.X,sum.Y,r);

system("pause");

}

❸ C语言的源代码是什么意思啊

C语言源代码,就是依据C语言规则所写出的程序代码,常见的存储文件扩展名为.c文件和.h文件,分别对应C源文件(source file)和C头文件(header file)。

C语言是一门编程语言,简单点说,就是由人类书写按照一定规范书写的字符,通过一定手段(编译链接)转换后,可以让电脑或者其它电子芯片"读懂",并按照其要求工作的语言。

在所有的编程语言中,C语言是相对古老而原始的,同时也是在同类语言中更接近硬件,最为高效的编程语言。

(3)c论坛源码扩展阅读:

C语言广泛应用于底层开发。它的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

它能提供了许多低级处理的功能,可以保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

❹ 请问C语言中源代码是什么意思啊

代码就是源程序
源代码,是指未编译的文本代码。是一系列人类可读的计算机语言指令。
在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。
作用
源代码主要功用有如下2种作用:
生成目标代码,即计算机可以识别的代码。
对软件进行说明,即对软件的编写进行说明。为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。
需要指出的是,源代码的修改不能改变已经生成的目标代码。如果需要目标代码做出相应的修改,必须重新编译。
代码组合
源代码作为软件的特殊部分,可能被包含在一个或多个文件中。一个程序不必用同一种格式的源代码书写。例如,一个程序如果有C语言库的支持,那么就可以用C语言;而另一部分为了达到比较高的运行效率,则可以用汇编语言编写。
较为复杂的软件,一般需要数十种甚至上百种的源代码的参与。为了降低种复杂度,必须引入一种可以描述各个源代码之间联系,并且如何正确编译的系统。在这样的背景下,修订控制系统(RCS)诞生了,并成为研发者对代码修订的必备工具之一。
还有另外一种组合:源代码的编写和编译分别在不同的平台上实现,专业术语叫做软件移植。
版权
如果按照源代码类型区分软件,通常被分为两类:自由软件和非自由软件。自由软件一般是不仅可以免费得到,而且公开源代码;相对应地,非自由软件则是不公开源代码。所有一切通过非正常手段获得非自由软件源代码的行为都将被视为非法。
质量
对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。源代码是否具有可读性,成为好坏的重要标准。软件文档则是表明可读性的关键。
效率
虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。普遍规律是:越高级的语言,其执行效率越低。这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。

❺ 查看论坛中的源码,可是加载到VS2008中,报编译错误,说无法识别工具版本4.0,这是为什么呢

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\4.0]
"DefaultToolsVersion"="2.0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\2.0]
"MSBuildToolsPath"="C:\\WINDOWS\\Microsoft.NET\\Framework\\v2.0.50727\\"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0]
"MSBuildToolsPath"="C:\\WINDOWS\\Microsoft.NET\\Framework\\v3.5\\"
建立一个reg为扩展名的文件,然后运行一下,提示注册成功,然后重起VS08,在打开这个项目就好了。我刚试过。还挺神的。

❻ 有没有什么好点的论坛源码,推荐个,谢谢。

用thinksns的论坛系统,图片排版个人觉得很漂亮。不关图片多少,排版都很好看的。圈子、打赏、资讯、短视频、音乐功能都有。不过需要收费,如果免费的话,就dz,不过ui真的太老了,不咋好看

❼ c源代码哪里有下载

http://www.softhy.net/
这里有很多啊,什么源代码都有
http://www.newasp.net/code/dl003185
这里下C的源代码

❽ 关于C/C++的最权威的网站

C++ reference
www.cplusplus.com

CSDN
mindhacks
看源代码可以去 github

❾ c语言:原码,反码 补码

1)原码表示
原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作[x]原。
例如,X1=
+1010110
X2=
一1001010
其原码记作:
[X1]原=[+1010110]原=01010110
[X2]原=[-1001010]原=11001010
在原码表示法中,对0有两种表示形式:
[+0]原=00000000
[-0]
原=10000000
2)补码表示
机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作[X]补。
例如,[X1]=+1010110
[X2]=
一1001010
[X1]原=01010110
[X1]补=01010110

[X1]原=[X1]补=01010110
[X2]
原=
11001010
[X2]
补=10110101+1=10110110
机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作[X]补。
例如,[X1]=+1010110
[X2]=
一1001010
[X1]原=01010110
[X1]补=01010110

[X1]原=[X1]补=01010110
[X2]
原=
11001010
[X2]
补=10110101+1=10110110
(3)反码表示法
机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。设有一数X,则X的反码表示记作[X]反。
例如:X1=
+1010110
X2=
一1001010
[X1]原=01010110
[X1]反=[X1]原=01010110
[X2]原=11001010
[X2]反=10110101
反码通常作为求补过程的中间形式,即在一个负数的反码的未位上加1,就得到了该负数的补码。
例1.
已知[X]原=10011010,求[X]补。
分析如下:
由[X]原求[X]补的原则是:若机器数为正数,则[X]原=[X]补;若机器数为负数,则该机器数的补码可对它的原码(符号位除外)所有位求反,再在未位加1而得到。现给定的机器数为负数,故有[X]补=[X]原十1,即
[X]原=10011010
[X]反=11100101+1
[X]补=11100110
例2.
已知[X]补=11100110,求[X]原。
分析如下:
对于机器数为正数,则[X]原=[X]补
对于机器数为负数,则有[X]原=[[X]补]补
现给定的为负数,故有:
[X]补=11100110
[[X]补]反=10011001+1
[[X]补]补=10011010=[X]原+1
[[X]补]补=10011010=[X]原
总结一下,原码(为负时,正时都不变)全部取反即得到反码,反码加
"1"就得到补码了,就是这么简单。

❿ 请问 有什么好的c语言源码网站或论坛啊 最好是新手能看懂的 谢谢。。。

有个C语言经典案例100题,你网络下,一大堆。上面100题都搞明白了,你就会了。最最基本的是你一定要懂C的最基础的东西。for循环、while(当型循环、直到型循环)、switch-case、if、基本数据类型能表达的范围、字节、字、位之间的关系、进制间的转换等等。

热点内容
文件加密编辑器下载 发布:2025-05-16 01:30:41 浏览:342
linuxapacheyum安装 发布:2025-05-16 01:30:31 浏览:475
大连宾利浴池wifi密码是多少 发布:2025-05-16 01:25:36 浏览:172
缓存数据生产服务 发布:2025-05-16 01:08:58 浏览:584
普通电脑服务器图片 发布:2025-05-16 01:04:02 浏览:971
服务器地址和端口如何区分 发布:2025-05-16 01:03:17 浏览:834
重新编目数据库 发布:2025-05-16 00:54:34 浏览:514
android语音控制 发布:2025-05-16 00:53:50 浏览:266
win8windows无法访问 发布:2025-05-16 00:37:53 浏览:895
八种排序算法 发布:2025-05-16 00:37:17 浏览:56