求C语言大佬帮忙看看!

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-08-01
c语言用蒙特卡洛方法求定积分 大佬帮忙看看哪里不对

#include#include #include double jifen(int, int, int, int);int main(){ int a,b,d,n; double c; srand((unsigned)time(NULL)); printf("请输入a b
"); scanf("%d %d",&a,&b); printf("请输入n
"); scanf("%d",&n); d=1+b*b; c=jifen(a,b,d,n); printf("积分为%lf
",c); return 0;}double jifen(int a,int b,int d,int n){ int i,m=0; double x,y,result; for(i=1;i<=n;i++){ x=(double)rand()/(double)(RAND_MAX)*(b-a)+a; y=(double)rand()/(double)(RAND_MAX)*d; if(y<=1+x*x) m++; } result=(double)m*(b-a)*d/n; return result;};如上 使用double 在最后加入result的强制转换
另外在x定义那里,改为(rand/rand_max)*(b-a)+a
因为是a,b 之间的距离随机加a,当a不为0时原来的式子是错的。

#include
int fun(int *x,int *y)//自定义地址交换函数;
{
int t;//自定义函数只能交换变量的地址;这我也讲不太明白;
t=*x;//C语言就这样规定的;
*x=*y;
*y=t;
}
int main()
{
int A[6],B[6],i;
for(i=0;i<5;i++)
scanf("%d %d",A+i,B+i);//输入一个A数组的,输入一个B数组的;共输入5次
for(i=0;i<5;i++)
{
fun(&A[i],&B[i]);//引用函数交换地址
}//A数组与B数组的值交换;
for(i=0;i<5;i++)
printf(i<4?"%d,":"%d",A[i]);//(a)?(b):(c)三目运算符,a成立执行b,否则执行c;
return 0;
}

这几道题都是一些类型作简单的赋值和运算后,再打印出来。初学,有些语法还没有涉及到,就要靠猜的方法来先行理解。比如Write和WriteLine,一个是输出,一个是输出后换行,和c语言的printf是同一个功能。至于它之前带的两个字符,可以忽略。没人教的情况下,应该在电脑上把vs2019装好,运行这些C#代码,实际体验一下,比死记语法效果要好得多。不动手,是学不好编程的,不动脑自救,不想经历挫折感就掌握编程,实在是天方夜谭

这些都是最基本的数据结构。其实你可以就是理解一下那个单词。代表的是什么举行代表的是什么数据逻辑?然后就差不多了。

这不是C语言,而是微软开发的C#语言(又叫CSharp语言)。C#语言在语法结构上向C/C++看齐,而在功能结构上向Java看齐,是一门面向对象的微软编程,因此需要用微软的Visual Studio系列开发。
System.Console表示系统控制台类,跟C语言的std一样,其中WriteLine函数相当于C语言的puts函数,可用以下代码简化成Console.WriteLine
using System;
这些都是最基础的东西,不需要请什么大佬,那个enum表示的是枚举类型,里面的变量如果不手动赋值则默认赋予值为前一个变量加一(第一个变量默认为0)
比如:
enum Number
{
ZERO,ONE,TWO,FIVE=5,SIX,SEVEN,ELEVEN=11
};
其中ZERO为0,ONE为1,TWO为2,FIVE为5(手动赋值),SIX为6,以此类推......

那就快点查啊

这并不是C语言,你找错大佬了

  • C语言求助,哪位大佬帮我看看这道题?一直搞不清楚
    答:知道答主 回答量:133 采纳率:0% 帮助的人:5.2万 我也去答题访问个人页 关注 展开全部 这是一道C语言的增删改查的链表操作操作的典型题目,同时考察对结构体的理解程度。最简单的就是使用顺序链表做。 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 ...
  • 求c语言编程大佬帮忙看看
    答:include <stdio.h>void main(){int x;scanf("%d", &x);if (x < 0)x = -x;printf("%d", x);}#include <stdio.h>void main(){char s[10] = {0};for (int i = 0; i < 5; i++){s[i] = '#';printf("%s\n", s);}} ...
  • C语言,可以的话讲一下每一步呗。求大佬帮忙
    答:思路:圆环体积就是大圆柱-小圆柱。总表面积就是两个侧面积+两个大圆面积-两个小圆面积。算法不止一种,这里不是重点。重点是如何转换成编程思想。1、根据题意,要使用结构体封装参数,因此需定义一个包含全部圆环参数的结构类型。2、圆环参数需要输入,因此要定义一个输入函数,负责输入参数,验证参数...
  • c语言问题,大佬看看。
    答:注意先输入的m是测试组数 表示要循环m次,每次循环再输入该组的整数对数n以及具体的n对整数 所以应改为如下形式:int m, n;scanf("%d", &m);while (m--) { int a, b, count = 0;scanf("%d", &n);for (int i = 1; i <= n; i++) { scanf("%d%d", &a, &b);if (hu(...
  • 求大佬帮帮忙看看这个C语言题目~
    答:使用cout对象输出地址时是16进制的,所以194是16进制的194,9个int单位以16进制计数就是24 (10进制36,每个int是4个字节). 194+24就是1b8.若要以10进制输出地址可以先把地址转换为整数 cout<<(size_t)(p+9)<<endl; //size_t是个64位无符号整数宏 ...
  • 自学C语言,求大佬帮我看一下代码写对没?
    答:首先可以while循环判断bt的值确保输入的值在0--2359之间,然后就是其实不用判断是否>100 include <stdio.h> int main(void) { int bt = -1,ut;printf("%s\n","请输入一个时间(0 ~ 2359)");while(bt < 0 || bt > 2359){ scanf("%d",&bt);if(bt < 0 || bt > 2359)printf...
  • C语言求助求助求大佬救命
    答:第一空:int MAX,MIN;int input_function(int *);int sorting_function(int *);int output_function(int *);第二空:array_data 第三空:array_data[i]=value;第四空:array_data[j-1]>array_data[j]第五空:(i+1)%5==0 另每一个函数最后一个}前加一句return 0;或把函数名前的int...
  • c语言编程,求大佬帮忙看看
    答:include <stdio.h>main(){char str1[100],str2[100],i,j;for(i=0; i<100; i++){scanf("%c",&str1[i]);if(str1[i]=='\n')break;}//for(j=0; j<100; j++)//{for(i=j=0; str1[i]!='\n'; i++,j++) //这里改正判断条件就行了 , { //还有去掉外循环 ...
  • C语言代码,求大佬帮忙
    答:题主的公式错了,应该是 :程序如下:include "stdafx.h"include<iostream> using namespace std;double Legendre(int n, double x){ if (n == 0){ return 1;} else if (n ==1){ return x;} return ((2 * n - 1) *x*Legendre(n - 1, x) - (n - 1)*Legendre(n - 2, x...
  • 求大佬帮忙看看这个C语言题
    答:这一题答案应该是A 2右移两位是0 2右移一位是1 所以 (b>>2)/(b>>1)就是 0/1 结果应该是0